詳解python破解zip檔案密碼的方法

2022-09-28 19:00:10 字數 2681 閱讀 2084

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()

xuextn 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')xuextn

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:

www.cppcns.com print ('pass密碼:',password)

pass

if __name__=="__main__":

extrac

破解結果:

總結本文標題: 詳解python破解zip檔案密碼的方法

本文位址:

Zip加密檔案破解

介紹 隨機計算機效能的提高,很多人可能覺得找到乙個zip檔案的密碼是一件很簡單的事情。通常,破解zip檔案有三種方法 暴力破解 字典攻擊,以及明文攻擊。azpr uzpc pkcrack 具體怎麼使用,大家可以參照他們的文件,很詳細。當然,你也可以通過搜尋引擎選擇其他的工具,相信還可以找到很多。好,...

python破解zip密碼

思路 主要是使用遍歷字典的方式進行破解,以及zipfile庫的使用 步驟 1.檢視是否已經安裝好zipfile庫 2.準備字典檔案 eg zipdict.py usr bin env python3 生成字典檔案 寫檔案 fp open d 1 dictionary.txt w 迴圈生成6位數字密碼...

Python暴力破解ZIP檔案密碼

通過python內建的zipfile模組實現對zip檔案的解壓,加點料完成口令破解 zipfile模組用來做zip格式編碼的壓縮和解壓縮的,zipfile裡有兩個非常重要的class,分別是zipfile和zipinfo,在絕大多數的情況下,我們只需要使用這兩個class就可以了。zipfile是主...