iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >使用 Python 破解压缩文件的密码的思路详解
  • 202
分享到

使用 Python 破解压缩文件的密码的思路详解

2024-04-02 19:04:59 202人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

经常遇到百度网盘的压缩文件加密了,今天我们就破解它! 实现思路 上篇文章给大家介绍了爆破密码的思路,感兴趣的朋友可以了解下。 其实都大同小异:无非就是字典爆破,就看你是有现成密码字典

经常遇到百度网盘的压缩文件加密了,今天我们就破解它!

实现思路

上篇文章给大家介绍了爆破密码的思路,感兴趣的朋友可以了解下。

其实都大同小异:无非就是字典爆破,就看你是有现成密码字典,还是自己生成密码字典,然后进行循环输入密码,直到输入正确位置。现在很多都有防爆破限制,根本无法进行暴力破解,但是似乎zip这种大家都是用比较简单的密码而且没有什么限制。

因此 实现思路就是

生成字典->输入密码->成功解压

实现过程

1.  生成字典

生成密码字典其实就是一个字符组合的过程。小伙伴们可别用列表去组合噢,很容易就内存溢出了,用生成器就最好啦。这里我选择使用python的 itertools 模块。 itertools
是2.3版本加入的用于创建循环用迭代器的函数模块。

itertools.product(*iterables[, repeat]) 函数是 对应有序的重复抽样过程

写出来生成密码字典的方法:(输出1,2组成长度为4的所有密码)


import itertools
def allkeyword(dic,num):
 allkey1 = itertools.product(dic,repeat=num)
 allkey2 = (''.join(i) for i in allkey1)
 return allkey2

dictionaries = ['1', '2']
print(list(allkeyword(dictionaries,4)))
# ['1111', '1112', '1121', '1122', '1211', '1212', '1221', '1222', '2111', '2112', '2121', '2122', '2211', '2212', '2221', '2222']

2.  解压文件

好家伙,Python的 zipfile
模块不就可以对文件压缩解压嘛?使用方法参考官方文档:https://docs.python.org/zh-cn/2/library/zipfile.html


import zipfile
try:
 ZIPFILE = zipfile.ZipFile(r'D:\123\1.zip') # 注意路径
 ZIPFILE.extractall(path=r'D:\123',pwd=b'1234') # 解压到哪个路径
 print("解压成功")

except:
 print("解压失败")

没有意外测试文件应该可以解压成功的。

3.  模拟项目所需加密的压缩文件

新建abc.txt文件,输入abc

右键txt文件,添加到压缩文件,并设置密码,确定

这里我们删除原有的txt文件,方便测试,破解成功后解压到当前路径

4.  使用生成的字典去爆破密码

结合1和2步骤,完整的代码:( 注意看注释学习


import zipfile
import itertools
# 破解一个4位数密码数字和字母为23ab大概5-10分钟,仅供参考。
dictionaries = ['1', '2', '3', '4','5','6','7','8','9','0',
    'a','b','c','d','e','f','g','h','i','j','k',
    'l','m','n','o','p','q','r','s','t','u','v',
    'w','x','y','z']   #组成破解字典的关键字符(可以按照自己需求添加)
end_for = True  # 用于破解成功后,停止循环的变量
# 设置密码的长度1到16位密码
for x in range (1,17):
 if end_for:
  def allkeyword():
   allkey1 = itertools.product(dictionaries,repeat=x)
   allkey2 = (''.join(i) for i in allkey1)
   return allkey2

  def trypassword (passWord):
   try:
    ZIPFILE = zipfile.ZipFile(r'D:\zip\abc.zip') # 需要解压带有密码的本地abc.zip
    ZIPFILE.extractall(path=r'D:\zip',pwd=password.encode('utf-8'))  # 解压到哪个路径下
    print(f"解压成功,正确密码为:{password}")  # 解压成功,并打印出正确密码
    global end_for  # 声明为全局变量,没有声明,重新赋值无效
    end_for = False  # 解压成功,停止循环
    return True
   except:
    print(f"解压失败,尝试密码为:{password}") 
    return False

  #用trypassword函数返回的True或者Flase来判定程序是否终止。
  for pwd in allkeyword() : 
   if trypassword(pwd):
    break

执行代码后,4位数的密码(数字字母组合的)大概5-10分钟就能成功解压,破解打印密码了。

破解密码后,由于我们设置的是解压到当前路径下,可以看到abc.txt文件就出来了。

到此这篇关于使用 Python 破解压缩文件的密码的思路详解的文章就介绍到这了,更多相关Python破解压缩文件密码内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: 使用 Python 破解压缩文件的密码的思路详解

本文链接: https://www.lsjlt.com/news/122111.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 使用 Python 破解压缩文件的密码的思路详解
    经常遇到百度网盘的压缩文件加密了,今天我们就破解它! 实现思路 上篇文章给大家介绍了爆破密码的思路,感兴趣的朋友可以了解下。 其实都大同小异:无非就是字典爆破,就看你是有现成密码字典...
    99+
    2024-04-02
  • 如何使用Python破解压缩文件
    这篇文章主要介绍如何使用Python破解压缩文件,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!其实都大同小异:无非就是字典爆破,就看你是有现成密码字典,还是自己生成密码字典,然后进行循环输入密码,直到输入正确位置。现...
    99+
    2023-06-14
  • Python如何破解压缩包密码
    目录简介:1.步骤1.环境2.判断文件格式3.判断是否有密码4.密码字典 自己写或者下载相应的软件生成。5.解压文件2.代码1.在线调试2.脚本运行简介: 破解rar和zip压缩包。...
    99+
    2024-04-02
  • Win10专业版破解压缩文件密码的方法
    破解压缩文件密码的方法有很多种,以下是一种常用的方法:1. 下载并安装一个密码破解工具,比如7-Zip或WinRAR。2. 打开密码...
    99+
    2023-09-17
    win10
  • Python 解压缩文件详解
    zipfile模块及相关方法介绍: 1 压缩 1.1 创建zipfile对象 zipfile.ZipFile(file, mode='r', compression=0, allowZip64=True, compresslevel=Non...
    99+
    2023-01-31
    解压缩 详解 文件
  • Python轻松破解加密压缩包教程详解
    目录一、准备工作二、开始操作相信大家都遇到过这种情况,下载文件的时候遇到压缩包又没有密码,或者说自己设置的加密密码,但是忘记了,就很难受~ 但是~ 在Python程序员面前,这都是...
    99+
    2024-04-02
  • Python文件的压缩与解压
    目录前言:1、压缩整个文件夹2、压缩指定扩展名文件3、获取指定类型的待压缩文件列表4、解压文件前言: Python在人工智能,后台服务等领域中得到了广泛应用。由于python有着大量...
    99+
    2024-04-02
  • python 破解加密zip文件的密码
    目录今天的文章来自 盏茶作酒 同学。他在老电脑中发现了一个加密的 zip 文件,于是用 Python 破解了文件密码。在破解的过程中出现了内存爆炸的问题,通过阅读 Python 源代...
    99+
    2024-04-02
  • 使用python怎么破解加密zip文件的密码
    使用python怎么破解加密zip文件的密码?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具...
    99+
    2023-06-14
  • cRARk破解加密的rar压缩包
    cRARk是一款用于破解加密的RAR压缩包的工具。它利用暴力破解的方法,尝试所有可能的密码组合,直到找到正确的密码解密RAR文件。以...
    99+
    2023-09-21
    cRARk
  • 使用python怎么批量解压带密码的压缩包
    今天就跟大家聊聊有关使用python怎么批量解压带密码的压缩包,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。环境需求Windows系统Python 3对于解压RAR文件,需要安装Wi...
    99+
    2023-06-15
  • 怎么用Python破解了同事加密的压缩包
    今天就跟大家聊聊有关怎么用Python破解了同事加密的压缩包,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。事情的经过是这样的:又是奶茶,行吧行吧。快点开工,争取大伟回来之前搞定。大伟...
    99+
    2023-06-02
  • Java多文件生成并压缩下载功能(思路详解)
    年前一直忙着项目现场实施,没时间整理,今天终于得空开始整理。 做WMS系统经常会遇到导出各种类型的库存单,此时就可以在后台将这些整合压缩到一个压缩包内然后再下载压缩包,一个接口就可以...
    99+
    2024-04-02
  • C#使用SharpZipLib压缩解压文件
    一、介绍 SharpZipLib是一个完全由C#编写的ZIP,GZIP,Tar和BZIP2 Library,可以方便的支持这几种格式的压缩和解压缩。 https://github.c...
    99+
    2024-04-02
  • Python批量解压&压缩文件夹的示例代码
    目录一、python批量解压二、python批量压缩一、python批量解压 提示:如果是重要数据解压前请先备份,解压后会覆盖原压缩文件!! 解压前: 解压后:文件名为英文: 文...
    99+
    2024-04-02
  • 基于Python实现文件的压缩与解压缩
    目录zip文件tar.gz文件rar文件7z文件在日常工作中,除了会涉及到使用Python处理文本文件,有时候还会涉及对压缩文件的处理。 通常会涉及到的压缩文件格式有: rar:W...
    99+
    2024-04-02
  • 如何使用Python解决简单的zip文件解压密码
    小编给大家分享一下如何使用Python解决简单的zip文件解压密码,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!文件创建首先测试文件为test.txt(仅包含单行文本),压缩后文件为test.zip,压缩密码为2340,压...
    99+
    2023-06-25
  • 怎么使用Python破解ZIP或RAR文件密码
    这篇文章主要介绍怎么使用Python破解ZIP或RAR文件密码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、破解原理其实原理很简单,一句话概括就是「大力出奇迹」,Python 有两个压缩文件库:zipfile 和...
    99+
    2023-06-15
  • 如何使用Python实现zip文件密码破解
    小编给大家分享一下如何使用Python实现zip文件密码破解,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Python有一个内置模块zipfile可以干这个事情,测试一波,一个测试文件,设置解压密码为123。import&...
    99+
    2023-06-15
  • Python破解ZIP或RAR文件密码
    基本原理在于Python标准库zipfile和扩展库unrar提供的解压缩方法extractall()可以指定密码,这样的话首先(手动或用程序)生成一个字典,然后依次尝试其中的密码,如果能够正常解压缩则表示密码正确。import osim...
    99+
    2023-01-31
    密码 文件 Python
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作