溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用python怎么破解zip文件密碼

發(fā)布時間:2021-05-21 17:55:22 來源:億速云 閱讀:167 作者:Leah 欄目:開發(fā)技術(shù)

這期內(nèi)容當中小編將會給大家?guī)碛嘘P(guān)使用python怎么破解zip文件密碼,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

1、單線程破解純數(shù)字密碼

注意: 不包括數(shù)字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()

破解結(jié)果:

使用python怎么破解zip文件密碼

2、多線程破解純數(shù)字密碼

注意: 不包括數(shù)字0開頭的密碼

import zipfile,time,threading

start_time = time.time()
flag = True # 用于判斷線程是否需要終止,為True時程序執(zhí)行

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

破解結(jié)果:

使用python怎么破解zip文件密碼

提示: 多線程對數(shù)字型的運算沒有多大幫助

3、破解英文+數(shù)字型的密碼

import random,zipfile,time,sys

class MyIter():
  cset = 'abcdefghijklmnopqrstuvwxyz0123456789'
  def __init__(self,min,max):#迭代器實現(xiàn)初始方法,傳入?yún)?shù)
    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位數(shù)的密碼,在不明確位數(shù)的時候做相應(yīng)的調(diào)整
    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()

破解結(jié)果:

使用python怎么破解zip文件密碼

python主要應(yīng)用領(lǐng)域有哪些

1、云計算,典型應(yīng)用OpenStack。2、WEB前端開發(fā),眾多大型網(wǎng)站均為Python開發(fā)。3.人工智能應(yīng)用,基于大數(shù)據(jù)分析和深度學習而發(fā)展出來的人工智能本質(zhì)上已經(jīng)無法離開python。4、系統(tǒng)運維工程項目,自動化運維的標配就是python+Django/flask。5、金融理財分析,量化交易,金融分析。6、大數(shù)據(jù)分析。

上述就是小編為大家分享的使用python怎么破解zip文件密碼了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI