我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python轻松破解加密压缩包教程详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python轻松破解加密压缩包教程详解

相信大家都遇到过这种情况,下载文件的时候遇到压缩包又没有密码,或者说自己设置的加密密码,但是忘记了,就很难受~

在这里插入图片描述

但是~

在Python程序员面前,这都是小问题!

在这里插入图片描述

话不多说,我们直接开始操作.。

一、准备工作

我们先打开一个加密的压缩包尝试原始方法解压一下

在这里插入图片描述

然后弹出来让我输密码

在这里插入图片描述

正常打不开,如果你点击跳过所有加密,它也不会打开,直接就关闭当前你窗口了。

那正常情况下,我们能怎么办,什么也办不了,下一个会更乖。

在这里插入图片描述

我们打开pycharm,新建一个py文件,暂且我把它命名为zip_pwd

灵魂三问:没有pycharm?Python也没有?还不会安装?私我

在这里插入图片描述

在这之前呢,我们先要去收集一些信息,比如当前的密码位数与类型。

类型包含包括它有没有特殊字符,有没有字符串,是不是纯数字。

假设我们现在已知信息呢,总共有两个,已知当前密码类型为整形,六位数密码。

我们先创建一个纯数字6位密码库,你也可以去GitHub上面下载一个包含所有字符的密码字典库,这个现在是开源的,破解时间具体要看设置的密码长短、复杂与否。

在这里插入图片描述

二、开始操作

回到正题

已知我们现在的密码是六位纯数字,那么怎么自己创建密码字典呢?

首先我们要完成一个文件写入的功能

首先声明一个变量 f


f = open()
# Python内置函数  

open是一个IO流,可以完成文件读写功能。

比如说我先想在一个文件里写入一些内容,就可以通过open去做 。

然后我们通过open创建一个文件,名字暂且命名为possword.txt,在加入一个写入方式,以 w方式去写入。


f = open('password.txt','w')

然后通过循环去创建密码,密码设置个1000000


for id in range(1000000)

这时候需要创建一个password变量生成密码,创建之前先导入一个方法的包。


import zipfile

然后通过password可以开始生成密码了 ,这个zfill等于 6位的,再加上换行,因为生成一个密码就要换一行,并且生成密码应该是一个字符串类型。


password = str(id).zfill(6) + '\n'

然后通过f.write方法把password写入到文件当中


f.write(password)

写进去之后要去关闭当前的文件流


f.close()

然后我们来尝试去生成一下,看看能不能成功。


import zipfile

f = open('password.txt','w')
for id in range(1000000)
    password = str(id).zfill(6) + '\n'
    f.write(password)
f.close()

可以看到这里给我们生成了一个possword.txt密码字典,它是一个密码库。

在这里插入图片描述

从000000一直到999999它已经全部生成出来了。

在这里插入图片描述

这就是一个简单的密码字典生成方式,如果要去生成一个比较复杂的密码肯定不会这么简单,给你们看个一个复杂的,这里我就不演示了,看看就可以了,将近写了一万多行。

在这里插入图片描述

所以你们自己想要去生成的话,还得专门好好学一下。

在这里插入图片描述

搞定六位数数字密码字典后我们需要完成解决压缩文件密码的函数

首先我们先来声明一个函数 ,取个名字叫file,然后加入两个行参。

第一个是我的压缩文件zipfile,第二个是当前需要传入的密码password


def pwd_file(zipfile,password):

传完行参后写上一个异常处理,调用zipfile,它里面会有一个方法extractall传入两个值,第一个是pwd传入字节,在字节里传入行参,编码集是utf8


tey:
	zipfile.extractall(pwd=bytes(password, 'utf8'))

然后print压缩包密码,打印password


print('压缩包密码:', password)

因为密码库里面密码比较多,只有一个正确的,其它的都是错误的,所以肯定会报错,所以我们要写一个异常处理,写上一个pass就可以了,报错了就给它pass掉。


except:
    pass

这就是一个简单的函数,我们通过zipfile它里面的一个extractall方法去智能的获取正确密码,它是可以自动匹配密码的。

所以说Python牛逼,很多东西都不需要我们去写,直接调用就好了。

在这里插入图片描述

然后我们来写上执行函数

先写上一个main函数


def main():

main函数里面,通过zipfile方法把加密的压缩文件代入到代码中。


zipFlie = zipfile.ZipFile('./获取文件密码.zip')

通过pwd生成一个list变量,打开生成的密码文件。


pwd_list = open('./password.txt')

然后我们需要一个一个去试密码,这个是一行一行的去读。


for line in pwd_list.readlines():

读到一个就把它写进去,拿到一个密码删除一个换行符。


pwd = line.strip('\n')

通过pwd_file调用之前写的函数,传zipFliepwd


pwd_file(zipFlie, pwd)

最后写入函数入口,写上一个main,为什么要写这个函数入口呢?不写也可以运行的。

因为它是用来去做测试的。

if __name__是一个测试入口,什么意思呢?

比如我在当前文件下导入了其它文件库,但是我又不想用,我就可以通过if让它不去运行,所以可写可不写,当一个延伸。


if __name__ == '__main__':
    main()

全部代码


import zipfile


f = open('password.txt', 'w')
for id in range(1000000):
    password = str(id).zfill(6) + '\n'
    f.write(password)
f.close()


def pwd_file(zipFlie, password):
    try:
        zipFlie.extractall(pwd=bytes(password, 'utf8'))
        print('压缩包密码:', password)
    except:
        pass


def main():
    zipFlie = zipfile.ZipFile('./获取文件密码.zip')
    pwd_list = open('./password.txt')
    for line in pwd_list.readlines():
        pwd = line.strip('\n')
        pwd_file(zipFlie, pwd)


if __name__ == '__main__':
    main()

我们看看效果,可以看到压缩包的密码已经打印出来了。

在这里插入图片描述

如果你要获取的密码越复杂,你的电脑越好就计算的越快。

兄弟们,学废了吗?

原创不易,点个赞支持一下哇~

在这里插入图片描述

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

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python轻松破解加密压缩包教程详解

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

下载Word文档

猜你喜欢

Python如何破解加密压缩包

本篇内容介绍了“Python如何破解加密压缩包”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、准备工作我们先打开一个加密的压缩包尝试原始方
2023-06-25

cRARk破解加密的rar压缩包

cRARk是一款用于破解加密的RAR压缩包的工具。它利用暴力破解的方法,尝试所有可能的密码组合,直到找到正确的密码解密RAR文件。以下是使用cRARk破解加密的RAR压缩包的步骤:1. 下载cRARk:在互联网上搜索cRARk,并从可信的网
2023-09-21

怎么用Python破解了同事加密的压缩包

今天就跟大家聊聊有关怎么用Python破解了同事加密的压缩包,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。事情的经过是这样的:又是奶茶,行吧行吧。快点开工,争取大伟回来之前搞定。大伟
2023-06-02

python加密打包程序详解

这篇文章主要介绍了python加密打包程序,还给大家介绍了Python实现文件简单加解密的方法,本文通过示例代码给大家介绍的非常详细,需要的朋友可以参考下
2023-05-15

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录