Python生成黑客字典程序(一)

本文介绍如何使用Python的string.printable生成黑客字典,包括数字、字母和符号的组合。通过设置不同长度,利用itertools迭代组合,生成的字典可存储为文本文件供后续使用。例如,命令`python *.py 6 6 Six_nums_dict.txt`将生成6位字符长度的字典,并保存到指定文件。
摘要由CSDN通过智能技术生成

Python生成黑客字典,首先需要字符串来源

可以使用string包中的printable,具体作用如下:

string.printable为所有字符的集合,包含数字,大小写字母,符号包含空格制表符回车等;

使用string.printable[:-9]可获得: 0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~这些符号,因为一般的字典中不会用到空格回车等这些特殊字符,因此只需要前面的字符即可。

要获得数字所组成的字符串集合,即为:string.printable[:10]

要获得字母所组成的字符串集合,即为:string.printable[10:62]

生成字符串通过迭代组合即可以得到所需的字典内容,然后存储下来就可以得到所谓的黑客字典。

迭代过程使用itertools,这部分内容,详情可以自行百度或者Google。

使用方法:python *.py 6 6 Six_nums_dict.txt

其中第一个参数为最短长度,第二个参数为最长长度,第三个参数为存储路径(存储文件)

这样就生成了单个字符长为6的字典,打开Six_nums_dict.txt,即可看到生成信息;

因为一般密码长度不会太长,所以没有必要生成太长的密码,


#!/usr/bin/env python
#coding:utf-8
#B
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值