from hashlib import md5 from string import ascii_letters,digits,punctuation from itertools import permutations from time import time
#生成暴力破解口令集 all_letters=ascii_letters+digits+punctuation+'.,;' def decrypt_md5(md5_value): if len(md5_value)!=32: print('不是有效的md5值') return md5_value=md5_value.lower() for item in permutations(all_letters,5):#全排列 item=''.join(item) # print(item) if md5(item.encode()).hexdigest()==md5_value: return item md5_value ='f7db3262ba19e2c1dcdaeefe69c688a1' start=time() result=decrypt_md5(md5_value) if result: print('\n Success: '+md5_value+'==>'+result) print('Time used:',time()-start)
运行结果:
Success: f7db3262ba19e2c1dcdaeefe69c688a1==>abc6F
Time used: 0.005983591079711914