介绍
这篇文章主要介绍”如何用python实现破解压缩压缩包程序”,在日常操作中,相信很多人在如何用python实现破解压缩压缩包程序问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答“如何用python实现破解压缩压缩包程序”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
详细
- <李>
项目文件结构
李> <李>代码实现过程
李> <李>演示效果
李>项目文件结构
在当前目录有三个文件:
- <李>
3-zipCrack。py:邮政破解程序
李> <李>字典。txt:密码字典
李> <李>邪恶。邮政编码:邮政压缩包程序
李>
代码实现过程
邮政,是一个文件的压缩的算法,邮政通常使用后缀名”。邮政”,它的MIME格式为应用程序/zip。
目前,zip格式属于几种主流的压缩格式之一,其竞争者包括RAR格式以及开放源码的7 - zip格式。从性能上比较,RAR格式较zip格式压缩率较高,但是它的压缩时间远远高于邮政。
其破解原理就是遍历密码字典的密码,逐个尝试解码,如果密码复杂字典过大会导致破解效率下降,下面用多线程破解可以改善之。
import zipfile import optparse 得到threading import 线程 def extractFile (zFile,密码): ,,,,#,破解zip 密码程序 ,,,,zFile.extractall (pwd=密码) ,,,,print & # 39; [+], Found password & # 39;, +, password +, & # 39; \ n # 39; def main (): ,,,parser =, optparse.OptionParser (“usage  % prog “+ \ ,,,,,“-f & lt; zipfile>, -d & lt; dictionary>“) ,,,#,解析命令行 号,,,,… ,,,zFile =, zipfile.ZipFile (zname) ,,,passFile =,开放(dname) ,,,for line 拷贝passFile.readlines (): ,,,,,,,#,实现多线程破解 ,,,,,,,t =,线程(目标=extractFile, arg游戏=(zFile,密码) ,,,,,,,t.start () if __name__ ==, & # 39; __main__ # 39;: ,,,main ()
PS:如有需要Python学习资料的小伙伴可以加下方的群去找免费管理员领取
演示效果
在当前目录有三个文件:
- <李>
3-zipCrack。py:邮政破解程序
李> <李>字典。txt:密码字典
李> <李>邪恶。邮政编码:邮政压缩包程序
李>第一次输入python 3-zipCrack.py提示使用用法:
usage % prog -f & lt; zipfile>, -d & lt; dictionary>
然后按使用方法正确输入命令:
python 3-zipCrack.py -f evil.zip -d 字典。txt
这样成功破解出邪恶的。zip压缩包,并显示zip解码密码是秘密。