python生成遍歷暴力破解密碼(這里已遍歷暴力破解rar為例,只提供生成密碼以及遍歷密碼)
這個也就是提供一個思路,需求是這樣的,我XX的閨蜜有個rar的壓縮包,不知道他是從哪里掙來的,說這個對他比較重要,但是有密碼打不開,唉,可憐了我的電腦了
因為這個是暴力破解,是吧所有的密碼進行的遍歷,也就是從1到,,,,無窮的列舉出來,然后按個密碼去撞,撞開了就開了,建議大家買個云服務器進行破解哈,因像這種的第一,不知道密碼是幾位的,第二還有特殊符號的,唉,破解時間太長了,就用8位密碼來說把,全部8位測驗完密碼也得5個小時,筆記本那是嗡嗡的,為了自己的電腦,還不如掏個錢買個云服務器讓他自己跑著測密碼去,一小時也才2元錢,最低配置的哈,,,,
先看效果圖

別看這個1234密碼簡單,但是對于程式來說這個也是從1111然后1112然后1113一次類推,暴力到的1234
直接上原始碼
import itertools as its ##這個庫,python自帶的
import rarfile #這個是操作rar壓縮包的,如果你需要破解別的密碼的話,比如pdf,那么請你安裝下pdf的第三方庫
### 這個根據需要來,這邊測驗的是破解rar壓縮包
path1 = "E:\\python2\\rar\\1.rar" # 需要解壓的檔案路徑及地址
path2 = "E:\\python2\\rar" # 需要解壓到的檔案夾地址
##下面的是你的密碼可能用的字符#
words = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'( )*+,-./:;<=>?@[]^_`{|}~" ##密碼里面含有大小寫字母,數字以及特殊符號
re=4 ##這個是與下面的repeat相對應的,代表你需要生成幾位的陣列,這里是4,代表生成4位的陣列,
while 2>1:
r = its.product(words,repeat=re)
for i in r:
# print(type(i))
a ="".join(i) ##通過.join將陣列里面的元素轉換成字串
print("當前測驗密碼:",a)
###嘗試測驗密碼,如果錯誤continue,進入下一次回圈
try:
rf = rarfile.RarFile(path1) # pwd為解壓密碼
rf.extractall(path=path2, pwd=a)
print('密碼破解成功:',a)
exit(0)
except Exception as e:
print(e)
continue
else:
re+=1 ###如果將所有的4位字符組合嘗試完成后,還是沒有破解到密碼,那么會將4再加上1,進行5位數的破解(這里沒有具體寫出,為了代碼的整潔,沒有寫出如何回圈到5位數密碼)
結束語
密碼都可以破解成功的,只是時間的問題,如果是9位數的話估計的好幾天了,所以說,如果知道點密碼的詳情也好,那怕知道是幾位數的密碼,等也讓咱等的值得
比如我這個,我習慣性的把密碼從6位開始破解了,一直破解到8位還是沒破解開,人家的密碼設定成了5位數,你說氣人不
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/337711.html
標籤:python
