使用 Python 创建您自己的强密码生成器

大家好,我是基础设施团队的斋藤。
这次我将介绍如何使用 Python 创建密码。
首先,你每天是如何决定密码的?
很多人可能在选择密码时会遇到困难。
如果你有互联网连接,
你可以搜索现有的密码创建网站,但
有时你需要设置服务器密码,而无法访问互联网。
今天我将向大家展示一个简单的密码创建程序。
如何生成密码
这次,我们来创建一个Python程序,生成10个长度为8个字符的密码。
源代码如下。
from random import choice from string import ascii_letters, digits, punctuation def gen_passwd(length=8, chars=ascii_letters+digits+punctuation): return ''.join([choice(chars) for i in range(length)]) for i in range(10): print(gen_passwd(8, ascii_letters+digits))
我将解释要点。
`gen_passwd`,它接受密码中的字符数和单词列表作为参数,并
输出密码。
ascii_letters是从 a 到 z,A 到 Z 的字母序列。
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
“digits”字段是一个介于0到9之间的字符串。
0123456789
在您的电脑上运行此程序。
$ python pass.py 49HisGp9 lCH0m8gC iw7kPHF9 sxRXMnVS h9u2g8Zd 7XI3Abwk U47mAn36 wtrxmhnJ 1Ml5DRTa GDlIO7Bn
密码候选列表已输出!
如何增强密码强度
您可以使用特殊字符来增强密码强度。
特殊符号如下:
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
要使用此功能,请在函数参数中添加标点符号并运行程序:
$ python random_pass.py [root@sim pybox]# ./random_pass.py P`)Y*HDg &j/{JigU NIDmYL|v DTg,,<8u [W:=7Y%H _JDy}OXJ ?4e0]fW :-rR2X4q #)M7/f+K
程序已生成包含特殊字符的密码,这使其成为一个更安全的密码。
如果您觉得将密码长度从 8 个字符更改为其他长度比较麻烦,也可以通过导入 sys 或 argparse 模块将程序转换为命令。
您还可以使用翻译功能排除您不会使用的字符。
请尝试展开它。
补充
攻击服务器的一种方法是字典攻击。
黑客发起字典攻击时,会准备一个字典文件,其中包含密码中常用的单词,以此来破解密码。
代表性词典http://download.openwall.net/可以从网站
黑客可能会基于此字典文件发起攻击。
如果您的密码包含此字典文件中的字符,则
其被破解的可能性自然会增加。
一种更直接的方法,暴力破解攻击称为
为避免这种情况,我们建议您增加密码长度。
例如通过基本身份验证或 WordPress 登录屏幕,
如果您的系统可供大量人员访问,
如果您觉得这篇文章对您有帮助,请点个“赞”!
2
