Python破解壓縮包密碼問題

2022-02-22 04:56:49 字數 1203 閱讀 1121

1. pool 程序池

2. try...except 異常處理

3.列舉的方式

4.生成器的運用

通過生成假密碼去碰撞!捕獲異常,一直碰撞,直到生成的密碼與壓縮包建立的密碼對應,成功拿到正確的密碼!

import zipfile,time

import itertools as its

from multiprocessing import pool

#author = __rianley__

def extractfile(numer):

password=generate_pwd(numer) #拿到生成器物件,密碼字典過大,只能用生成器否則一下就把記憶體撐爆了!

zfile = zipfile.zipfile('suite 6.zip') # 開啟zip包

for pwd in password:

try:

zfile.extractall(pwd=bytes(pwd,"utf-8"))

return pwd

except exception as e:

# print(pwd)

continue

def generate_pwd(numer): #生成密碼

words = "1234568790" #密碼範圍:當前表示純數字範圍

r = its.product(words, repeat=numer)

for i in r:

pwd = ''

for num in i:

pwd += num

yield pwd

if __name__ == '__main__':

p = pool() #開啟程序池

res_list = # 定義存放程序的列表

for i in range(1, 30): # 設定 隨機密碼的位數(如果別人的設定的密碼)

print('正在嘗試破解') # 列印一句提示性的資訊

for kill in res_list:

data=kill.get()

if data:

print('破解成功:密碼是:%s'%data)

exit()

3.該文章所闡述的觀點,僅代表個人看法,**僅為學習使用!造成任何商業糾紛與原作者無關!

4.本文由程小航編寫!

用python暴力破解壓縮包密碼

import rarfile import random import time import sys class myiterator 單位字元集合 letters 0123456789 min digits 0 max digits 0def init self,min digits,max d...

Linux常見壓縮包解壓縮

對於.tar結尾的檔案 tar xf all.tar對於.gz結尾的檔案 gzip d all.gz gunzip all.gz對於.tgz或.tar.gz結尾的檔案 tar xzf all.tar.gz tar xzf all.tgz對於.bz2結尾的檔案 bzip2 d all.bz2 bunz...

linux 解壓縮包方式

1.以.a為副檔名bai的檔案 tar xv file.a 2.以.z為副檔名的檔案 uncompress file.z 3.以.gz為副檔名的檔案 gunzip file.gz 4.以.bz2為副檔名的檔案 bunzip2 file.bz2 5.以.tar.z為副檔名的檔案 tar xvzf fi...