跳转到主内容
websoft网络软件专家 - 深耕网络技术,打造实用软件!

详解python破解zip文件密码的方法

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):#直接返回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破解同事的压缩包密码利用Python破解摩斯密码用Python实现zip密码破解实例如何使用Python破解ZIP或RAR压缩文件密码Python轻松破解加密压缩包教程详解Python如何破解压缩包密码

相关文章