python生成遍历暴力破解密码(这里已遍历暴力破解rar为例,只提供生成密码以及遍历密码)

python生成遍历暴力破解密码(这里已遍历暴力破解rar为例,只提供生成密码以及遍历密码)

这个也就是提供一个思路,需求是这样的,我XX的闺蜜有个rar的压缩包,不知道他是从哪里挣来的,说这个对他比较重要,但是有密码打不开,唉,可怜了我的电脑了
因为这个是暴力破解,是吧所有的密码进行的遍历,也就是从1到。。。。无穷的列举出来,然后按个密码去撞,撞开了就开了,建议大家买个云服务器进行破解哈,因像这种的第一,不知道密码是几位的,第二还有特殊符号的,唉,破解时间太长了,就用8位密码来说把,全部8位测试完密码也得5个小时,笔记本那是嗡嗡的,为了自己的电脑,还不如掏个钱买个云服务器让他自己跑着测密码去,一小时也才2元钱,最低配置的哈。。。。

先看效果图

在这里插入图片描述

别看这个1234密码简单,但是对于程序来说这个也是从1111然后1112然后1113一次类推,暴力到的1234

直接上源码


import itertools as its     ##这个库,python自带的
import rarfile   #这个是操作rar压缩包的,如果你需要破解别的密码的话,比如pdf,那么请你安装下pdf的第三方库


### 这个根据需要来,这边测试的是破解rar压缩包
path1 = "E:\\python2\\rar\\1.rar"  # 需要解压的文件路径及地址
path2 = "E:\\python2\\rar"  # 需要解压到的文件夹地址



##下面的是你的密码可能用的字符#
words = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!#$%&'( )*+,-./:;<=>?@[]^_`{|}~"    ##密码里面含有大小写字母,数字以及特殊符号


re=4        ##这个是与下面的repeat相对应的,代表你需要生成几位的数组。这里是4,代表生成4位的数组。
while 2>1:
    r = its.product(words,repeat=re)
    for i in r:
        # print(type(i))
        a ="".join(i)        ##通过.join将数组里面的元素转换成字符串
        print("当前测试密码:",a)

		###尝试测试密码,如果错误continue,进入下一次循环
        try:
            rf = rarfile.RarFile(path1)  # pwd为解压密码
            rf.extractall(path=path2, pwd=a)
            print('密码破解成功:',a)
            exit(0)
        except Exception as e:
            print(e)
            continue
    else:
        re+=1       ###如果将所有的4位字符组合尝试完成后,还是没有破解到密码,那么会将4再加上1,进行5位数的破解(这里没有具体写出,为了代码的整洁,没有写出如何循环到5位数密码)

结束语

密码都可以破解成功的,只是时间的问题,如果是9位数的话估计的好几天了,所以说,如果知道点密码的详情也好,那怕知道是几位数的密码,等也让咱等的值得
比如我这个,我习惯性的把密码从6位开始破解了,一直破解到8位还是没破解开,人家的密码设置成了5位数,你说气人不

  • 7
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

刘帅0952

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值