zoukankan      html  css  js  c++  java
  • 尝试破解压缩文件

    今天尝试用zipfile模块破解一下压缩文件的密码。前提:首先自己建一个压缩文件,并设置密码。

    首先当然是测试已知密码的解压:

    import zipfile
    
    zfile = zipfile.ZipFile(r'C:Usersxxxout.zip')
    zfile.extractall(r'C:Usersxxxpojie', pwd='123456'.encode()) # 使用密码进行解压全部
    

      

    其次是暴力破解,我这里用的密码比较简单。就六位纯数字。

    import zipfile
    import time
    
    def unzip(pwd):
        zfile = zipfile.ZipFile(r'C:xxx1	est.zip') # 加密的压缩文件位置
    
        # 开始尝试解压
        try:
            zfile.extractall(r'C:xxx1out', pwd=pwd.encode()) # 尝试利用密码解压到指定目录
            print('已经利用密码%s解压成功。' % (pwd))
            return 1 # 返回判定状态
        except RuntimeError:
            print('正在用密码%s进行尝试。。。' % (pwd))
            time.sleep(2)
            return 0
    
    if __name__ == "__main__":
        for pwd in range(100000, 9999999999): #定义六位到十位的数字密码
            if unzip(str(pwd)): # 判定是否成功
                break # 终止循环
            else:
                continue # 否则就继续
    

     

    为了让破解进度快些,我设置的密码为100005,六位数字密码。结果如下: 

  • 相关阅读:
    装配线调度
    最长非降子序列
    0-1背包问题
    所有点对的最短路径问题
    矩阵链相乘
    最长公共子序列
    最近点对问题
    寻找多数元素
    寻找第K小元素
    java冒泡排序算法
  • 原文地址:https://www.cnblogs.com/mafu/p/15432753.html
Copyright © 2011-2022 走看看