使用方法
- 在“密码”栏中输入密码。输入内容会被隐藏;按“显示”可查看您输入的内容。
- 查看“估算熵值”和“强度”。比特数越高,攻击者需要猜测的次数就越多。
- 查看三种既定速率下的“平均破解时间”,以及其下方的 NIST 检查项。
- 查看“发现的规律”,了解猜测者会优先尝试密码的哪些部分。
熵值的估算方法
每个不属于任何规律的字符,其成本是字符池大小的以2为底的对数。字符池大小由密码所含的字符类别决定:26个小写字母、26个大写字母、10个数字、33个符号(包括空格),其他字符则按100计。规律各自有其成本:常用密码列表中的单词,成本为其排名对应的比特数;重复或顺序排列的字符成本很低,键盘上连续的按键或一个年份也是如此。
估算值是把密码切分为字符与规律时的最低成本。攻击者尝试各部分的顺序没有计入,因此估算值可能略低。每个数字只是衡量规模的模型,而不是对任何真实攻击的测量。
entropy if random = length x log2(pool);estimate = 切分为字符与规律的最低成本
NIST SP 800-63B 的要求
单独使用的密码长度至少为15个字符;仅作为多因素登录的一部分使用时,可以是8个字符。验证方应接受至少64个字符,并应接受空格和所有可打印字符。
验证方不得强制规定字符类型组合等构成规则,也不得强制定期更换,除非有证据表明密码已泄露。它们必须将整个密码与常用或已泄露的密码列表进行比对,应允许粘贴,并且必须允许密码管理器和自动填充。
计算示例:Password2026
Password2026 由12个字符组成,取自62个可能的字符(小写字母、大写字母和数字)。若它是随机生成的,熵值为 12 × log2(62),即71.5比特。
它的规律成本很低:password 是常用列表中排第1的单词,成本为0比特,再加上大写字母 P 的1比特;2026是一个年份,成本为 log2(140),约7.1比特。估算熵值为8.1比特,属于弱,平均约需280次猜测,所以即使按在线速率,也会在不到一秒内被猜中。
常见问题
密码会被发送到服务器或保存下来吗?
不会。页面在您的浏览器中分析密码,不会发出任何包含密码的请求。页面会加载我们提供的常用密码列表文件,但密码本身从不发送,刷新页面后即被遗忘。
为什么 Password1! 很弱,它明明包含大写字母、数字和符号?
猜测者会先尝试常用词,并加上常见的附加内容,因此字符类型的组合增加不了多少强度。NIST SP 800-63B 正是用这个例子说明,构成规则作用很小;长度和与常用密码的比对更为重要。
熵值是什么意思?
它是密码估算选择空间的比特数。每增加一个比特,平均需要猜测的次数就翻一倍,因此60比特远比40比特难猜。
为什么三种破解时间相差如此之大?
它们采用三种既定速率:无速率限制的在线攻击、针对慢速哈希的离线攻击,以及针对显卡上快速哈希的离线攻击。真实的攻击者不一定符合这三种情况,这些速率只用于显示规模。
结果为强,是否就代表这个密码可以放心使用?
仅凭此结果不能这样判断。页面不会检查密码是否已经泄露,或是否在其他网站上重复使用。请为每个账户使用不同的密码,并使用密码管理器来保存。
NIST 允许8个字符,为什么这里要求15个字符?
NIST 规定单独使用的密码为15个字符,只有在多因素登录中作为其中一个因素时才允许8个字符。页面显示的是单因素的标准,因为它更为严格。
为什么常用密码列表这么短?
NIST 建议使用常用值的黑名单,并指出过大的列表作用不大。页面使用 SecLists 列表中最常用的10,001个密码,该列表以 MIT 许可证发布。
资料来源
- NIST SP 800-63B:Digital Identity Guidelines: Authentication and Lifecycle Management(英文)
- SecLists:10k-most-common.txt(MIT 许可证,英文)
数据和文字最近核对于2026年11月10日星期二。