当前位置:首页 > 网络技术 > 手机压缩文件忘记密码怎么解压(手机解压zip暴力破解器)(手机压缩文件密码忘记了如何解压)

手机压缩文件忘记密码怎么解压(手机解压zip暴力破解器)(手机压缩文件密码忘记了如何解压)

longge@20222022-03-24 01:52:56网络技术221

本文将介绍如何通过zipfile包对加密zip文件进行破解。

zipfile是Python自带的一个zip压缩/解压缩库。

作为例子,我们创建一个zip压缩文件“test.zip”,并为其密码“123456”。

我们可以通过如下代码对这个文件进行解压缩:

这段代码的执行结果是将test.zip中压缩的文件解压到当前工作目录下。

等一下,在上面的例子里,我们知道解压缩密码是什么。但是现实情况往往是我们不知道密码。不要急,我们先来看一下如果密码错了会发生什么。

不出所料,系统抛出一个异常:

RuntimeError: Bad password for file ‘test.txt’

虽然解压缩失败了,但是我们知道了一个重要信息,那就是我们可以通过捕获这个异常来得知当前密码是否正确。

既然有了快速检测密码是否正确的方法,我们就可以通过暴力搜索的方式对密码进行破解。

密码破解的一个常用手段就是使用密码字典。密码字典通常是一个文件,里面保存着大量常用密码。我们通过对字典用的密码进行遍历,如果真实密码出现在密码字典中,那么就可以成功破解。具体代码如下:

输出结果为:

Password = ‘123456’

当然,这种方法的成功率很大程度上取决于密码字典的大小。密码字典越大,包含的密码就越多,成功破解的概率就越大。但这同时带来一个问题,那就是更多的尝试次数会使得程序运行时间变长。

我们注意到,尝试不同的密码的过程完全是独立的,因此可以利用多线程并行执行,从而提高运行效率:

大家可以在此基础上,发挥想象力,去实现更加强大的功能。

最后我要说的是,本文仅供技术学习和研究用,请不要利用它去做一些不好的事情。

免责声明
本站部分资源来源于互联网 如有侵权 请联系站长删除
龙哥网是优质的互联网科技创业资源_行业项目分享_网络知识引流变现方法的平台为广大网友提供学习互联网相关知识_内容变现的方法。

“手机压缩文件忘记密码怎么解压(手机解压zip暴力破解器)(手机压缩文件密码忘记了如何解压)” 的相关文章

响应式移动端网页下拉式导航HTML+jQuery+CSS代码

响应式移动端网页下拉式导航HTML+jQuery+CSS代码

响应式Web网页小屏设备访问时,点击导航按钮,下拉显示网页导航的效果代码。 HTML代码 PS:HTML代码中的<i class="fas fa-home"><...

JavaWeb 使用DBUtils实现增删改查方式_java

JavaWeb 使用DBUtils实现增删改查方式_java

目录 JavaWeb 使用DBUtils实现增删改查 1、创建C3p0Utils类 2、创建DBUtilsDao类 3、创建测试类 4、执行测试类...

java实现服务器巡查的代码_java(java服务监控)

java实现服务器巡查的代码_java(java服务监控)

目录 需求 批量ping 1.Jdk1.5的InetAddresss方式 2.最简单的办法,直接调用CMD 3.Java调用shell执行ping命令...

java报错:java.lang.NumberFormatException: For input string: “XXX“

java报错:java.lang.NumberFormatException: For input string: “XXX“

1、报错原因 在String转int时,当 String 有空格或者String不是纯数字时,就会报这个错 这个异常一般会出现在String转int或者integer过程(Integer.v...

配置完JDK1.8的环境变量之后,java -version仍然显示的是JDK1.7

配置完JDK1.8的环境变量之后,java -version仍然显示的是JDK1.7

问题描述:电脑里原来安装过JDK1.7,我又安装的JDK1.8,不管怎么改环境变量的配置,java -version都是显示的系统安装的是JDK1.7。 问了一下同事,原来安装1.8之前需要先把...

使用sharding-jdbc实现水平分库+水平分表的示例代码_java(shardingjdbc分库分表原理)

使用sharding-jdbc实现水平分库+水平分表的示例代码_java(shardingjdbc分库分表原理)

前面的文章使用sharding-jdbc实现水平分表中详细记录了如何使用sharding-jdbc实现水平分表,即根据相应的策略,将一部分数据存入到表1中,一部分数据存入到表2中,逻辑上为同...