密码强度检测器

实时分析密码有多强。输入的内容不会发送到服务器。不过,建议用长度和字符组成相似的示例来测试,而不是你正在使用的真实密码。

这个工具能做什么,不能做什么

输入密码后,页面会统计它的长度和用到的字符类型(小写字母、大写字母、数字、其他字符),据此计算熵值(比特),换算成暴力破解的耗时估计,并检查几类明显的模式:众所周知的常见密码、只做了字母换符号的变形、长串重复,以及 1234 这样的连续字符。 在确定新密码之前,可以用它先看看大致的"分量";也可以判断公司或学校的密码规则是否真有意义。但它只是经验性的估计:仅看长度和字符类型的公式无法知道密码是不是随机生成的,也不知道它是否已经出现在泄露名单里。所以得分高并不等于安全。

熵值是怎么算的

假设攻击者一无所知,只能逐个尝试所有组合,候选数量就是 N^L,其中N为字符集大小,L为长度。熵值是它以2为底的对数,H = L × log2(N) 比特。 本工具按如下方式确定N:出现小写字母加26,出现大写字母加26,出现数字加10,只要有任何其他字符(标点、汉字、表情符号等)就加32。页面显示的时间是 2^H ÷ 10^10 秒,即把所有组合试完所需的时间;平均而言,大约试到一半时就会命中。

每增加1比特,候选数量翻一倍,所以多加一个字符的效果与字符集大小成正比:仅小写字母时每个字符约 4.70 比特,用满94个可打印ASCII字符时约 6.55 比特。

字符集 × 长度参考表(构建时计算)

长度仅数字 (10)仅小写字母 (26)小写字母+数字 (36)大小写字母+数字 (62)字母+数字+符号 (94)
8位26.6 比特
不到1秒
37.6 比特
21秒
41.4 比特
5分钟
47.6 比特
6小时
52.4 比特
7天
10位33.2 比特
1秒
47.0 比特
4小时
51.7 比特
4天
59.5 比特
3年
65.5 比特
171年
12位39.9 比特
2分钟
56.4 比特
110天
62.0 比特
15年
71.5 比特
10,230年
78.7 比特
1.5e+6年
16位53.2 比特
12天
75.2 比特
138,282年
82.7 比特
2.5e+7年
95.3 比特
1.5e+11年
104.9 比特
1.2e+14年
20位66.4 比特
317年
94.0 比特
6.3e+10年
103.4 比特
4.2e+13年
119.1 比特
2.2e+18年
131.1 比特
9.2e+21年

可以看到:12位纯数字(约39.9比特)与8位纯小写字母(约37.6比特)相近;而16位纯小写字母(约75.2比特)远高于混用各类字符的8位(约52.4比特)。表中的时间都只对"随机选取字符"的密码成立。

示例输入与结果解读

下面各行都是用本工具的公式算出的数值(并用Node运行同一公式复核过)。这些示例是特意选的知名弱密码,请勿真正使用。

示例输入长度字符集熵值估算耗时
1234567881026.6 比特不到1秒
password82637.6 比特21秒
P@ssw0rd!99459.0 比特2年
Tr0ub4dor&3119472.1 比特16,055年
aaaaaaaaaaaaaaaa162675.2 比特138,282年
correcthorsebatterystaple2526117.5 比特7.5e+17年
我的密码43220.0 比特不到1秒

强度等级的划分

本工具的划分是:低于40比特为"很弱",40到60为"较弱",60到80为"一般",80到100为"较强",100以上为"很强"。这些界线并非行业标准,而是本站定的参考刻度。一旦检测到常见密码、重复或连续字符,无论计算值多高都会下调等级:众所周知的弱密码显示为"很弱",其他提醒则最高只显示到"较弱"。

最新指南怎么说

美国NIST的数字身份指南(SP 800-63B)在2025年的第4版中仍然强调长度和禁用名单。根据 pages.nist.gov/800-63-4 中3.1.1.2节"Password Verifiers"的内容:当密码是唯一的认证因素时,验证方要求至少15个字符;仅作为多因素认证的一部分时至少8个字符;建议允许至少64个字符的长度;不得强制混合字符类型之类的组合规则;必须把候选密码与常用或已泄露的密码名单比对;在没有泄露证据时,不得要求定期更换。Unicode字符按码点计数。具体条款和适用范围请以原文为准,你所在机构的规定可能更严格。

常见错误与误解

本工具的局限

安全与隐私说明

页面的计算在你每次输入时由浏览器中的脚本完成。脚本里没有通过 fetch 或表单提交发送输入值的代码,也不会保存。输入框默认是遮蔽的,勾选"显示输入内容"后才可见。浏览器扩展、公用电脑上的键盘记录器和旁人偷看,是本工具无法防范的。在会加载广告等第三方脚本的普通网页上,最稳妥的习惯是:不要粘贴真实在用的密码,改用长度和字符组成相似的字符串来测试。

如何使用结果

如果熵值达到80比特以上、没有常见模式的提醒,而且没有在其他服务上使用过,那么对普通账号来说已经足够。对于邮箱、金融以及密码管理器主密码这类重要账号,请使用16位以上的随机字符串,或由几个随机单词组成的密码短语,并开启多因素认证。难以记住的密码交给密码管理器是最现实的做法。需要随机候选时,请使用密码生成器。

相关工具

常见问题

我输入的密码会被保存吗?

不会。计算只在浏览器内进行,页面里没有发送或保存输入内容的代码。关闭或刷新页面后,输入框内容即被清除。

真实的攻击和这个计算完全一样吗?

不一样。实际攻击会先尝试泄露名单、字典和基于规则的变形,所以本工具的结果只是纯暴力破解的理论值。容易被预料的密码会比数字显示的快得多被攻破。

一定要包含符号吗?

NIST指南不建议强制组合规则,更看重长度和泄露名单检查。如果网站要求,就照做,但最好先加长。只是勉强满足要求的短密码,反而容易被预料。

用中文做密码安全吗?

汉字的种类很多,理论上的组合数很大,但人们挑选的往往是常用词语,这些都在字典覆盖范围内。另外,一些服务对非ASCII输入支持不佳,或在不同设备上的编码处理不同。本工具对这类字符保守地按32种处理。

多少比特才够?

没有固定答案。有登录次数限制的在线场景,较低的数值也能撑住;而针对泄露哈希的离线攻击需要高得多的数值。按本站的刻度,80比特以上显示为"较强",100比特以上显示为"很强"。

需要定期更换密码吗?

NIST建议在没有泄露迹象时不要强制定期更换。如果怀疑泄露,或此前曾重复使用,请立即更换;所在机构另有规定的,也请遵守。