有没有什么方法可以检查密码列表是否强大?
我有大约 2000 个密码列表,想根据此策略检查它们
- 密码必须至少包含八 (8) 个字符
- 密码必须包含至少一个字母
- 密码必须包含至少一个数字
- 密码必须至少包含一个标点符号
并在我们拯救他们之前计算出有多少人遵守了这项政策。
Excel 中是否有任何工具、脚本或规则可以执行此操作,而无需手动执行?
请你帮助我好吗?
答案1
答案2
有了如此明确定义的策略,几乎可以用任何语言编写脚本(或者甚至可以使用 shell 实用程序)。例如,对于每个密码,您可以:
- 最少 8 个字符:
[[ $(echo -n "$password" | wc -c) >= 8 ]] || echo "Too short"
- 包含一封信:
echo "$password" | grep -iq '[a-z]' || echo "No letters"
- 包含一个数字:
echo "$password" | grep -q '[0-9]' || echo "No digits"
- 包含标点符号:
echo "$password" | grep -iq '[^a-z0-9]' || echo "No punctuation"
检查密码强度的另一种方法是使用破解库。我不知道你如何定义它的政策,但它确实有其用途。例如
$ cat list-of-passwords | cracklib-check
password: it is based on a dictionary word
passw0rd: it is based on a dictionary word
Passw0rd!: it is based on a dictionary word
Tr0ub4dor&3: OK
correct horse battery staple: OK