1、单线程破解纯数字密码
注意: 不包括数字0开头的密码
import zipfile,time,sys start_time = time.time() def extract(): zfile = zipfile.ZipFile('IdonKnow.zip')#读取压缩包,如果用必要可以加上'r' for num in range(1,99999,1): try: pwd = str(num) zfile.extractall(path='.',pwd=pwd.encode('utf-8')) print ("当前压缩密码为:",pwd) end_time = time.time() print ('单线程破解压缩包花了%s秒'%(end_time-start_time)) sys.exit(0) except Exception as e: pass if __name__=="__main__": extract()
破解结果:
2、多线程破解纯数字密码
注意: 不包括数字0开头的密码
import zipfile,time,threading start_time = time.time() flag = True # 用于判断线程是否需要终止,为True时程序执行 def extract(password, file): try: password = str(password) file.extractall(path='.', pwd=password.encode('utf-8')) print ("当前压缩密码为:",password) end_time = time.time() print ('多线程破解压缩包花了%s秒'%(end_time-start_time)) global flag flag = False#成功解压其余线程终止 except Exception as e: pass def main(): zfile = zipfile.ZipFile("test.zip", 'r') for number in range(1, 99999,1): if flag: thr1 = threading.Thread(target=extract, args=(number, zfile)) thr2 = threading.Thread(target=extract, args=(number, zfile)) thr1.start() thr2.start() thr1.join() thr2.join() if __name__ == '__main__': main()
破解结果:
提示: 多线程对数字型的运算没有多大帮助
3、破解英文+数字型的密码
import random,zipfile,time,sys class MyIter(): cset = 'abcdefghijklmnopqrstuvwxyz0123456789' def __init__(self,min,max):#迭代器实现初始方法,传入参数 if min < max: self.minlen = min self.maxlen = max else: self.ninlen = max self.maxlen = min def __iter__(self):#直接html" target="_blank">返回slef实列对象 return self def __next__(self):#通过不断地轮循,生成密码 rec = '' for i in range(0,random.randrange(self.minlen,self.maxlen+1)): rec += random.choice(MyIter.cset) return rec def extract(): start_time = time.time() zfile = zipfile.ZipFile('test1.zip','r') for password in MyIter(1,4):#随机迭代出1~4位数的密码,在不明确位数的时候做相应的调整 if zfile: try: zfile.extractall(path='.',pwd=str(password).encode('utf-8')) print ("当前压缩密码为:",password) end_time = time.time() print ('当前破解压缩包花了%s秒'%(end_time-start_time)) sys.exit(0) except Exception as e: print ('pass密码:',password) pass if __name__=="__main__": extract()
破解结果:
总结
以上所述是小编给大家介绍的python破解zip文件密码的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
本文向大家介绍Python压缩解压缩zip文件及破解zip文件密码的方法,包括了Python压缩解压缩zip文件及破解zip文件密码的方法的使用技巧和注意事项,需要的朋友参考一下 python 的 zipfile 提供了非常便捷的方法来压缩和解压 zip 文件。 例如,在py脚本所在目录中,有如下文件: 将 readability 目录中的文件压缩到脚本所在目录的 readability.zip
本文向大家介绍Java解压和压缩带密码的zip文件过程详解,包括了Java解压和压缩带密码的zip文件过程详解的使用技巧和注意事项,需要的朋友参考一下 前言 JDK自带的ZIP操作接口(java.util.zip包,请参看文章末尾的博客链接)并不支持密码,甚至也不支持中文文件名。 为了解决ZIP压缩文件的密码问题,在网上搜索良久,终于找到了winzipaes开源项目。 该项目在google cod
我需要设置一个Python进程,它能够获取特定文件夹中的每个ZIP文件,并将其解压缩,以便访问和处理其中的数据。提供ZIP文件的人显然使用Java例程来实现这一点,但由于我不懂Java(甚至不懂密码学),所以我想使用Python。他们给了我: 一个密码 一个初始化向量 他们还指定使用这种类型的命令行:
本文向大家介绍Ubuntu解压zip文件乱码的解决方法,包括了Ubuntu解压zip文件乱码的解决方法的使用技巧和注意事项,需要的朋友参考一下 前言 本文介绍的是Ubuntu解压zip文件乱码的解决方法,共有2种方式解决问题,下面话不多说,来一起看看吧 一、通过unzip行命令解压,指定字符集 有趣的是unzip的manual中并无这个选项的说明, unzip --help对这个参数有一行简单的说
压缩包链接 有什么解决思路?
本文向大家介绍利用Python破解验证码实例详解,包括了利用Python破解验证码实例详解的使用技巧和注意事项,需要的朋友参考一下 一、前言 本实验将通过一个简单的例子来讲解破解验证码的原理,将学习和实践以下知识点: Python基本知识 PIL模块的使用 二、实例详解 安装 pillow(PIL)库: 下载实验用的文件: 这是我们实验使用的验证码 captcha.gif