密码强度检测器
测试一个密码有多强,查看它的熵和预估破解时间,并获得通俗易懂的弱点说明——全部在你的浏览器中完成。
密码强度检测器完全在你的浏览器中分析你的密码。你在字段中输入的任何内容都留在你的设备上——绝不会被上传、记录或发送到 ArrayKit。
打开密码生成器
关于 密码强度检测器
密码强度检测器测量一个密码有多难被猜到,并解释原因。输入或粘贴一个密码,它会计算一个 0-4 的强度分数、以比特估算的熵,以及一个粗略的离线破解时间,然后分解你使用了哪些字符类别——小写、大写、数字和符号。它还会标记具体的弱点:过短、只用一种字符类型、与某个极常见或已泄露的密码相符,或包含重复字符、像 abcd 的顺序串,或像 qwerty 的键盘走位。带隐藏与显示开关的字段让你在操作时把密码藏起来。它为任何加固账户或注册表单的人打造。每一次计算都在你的设备上运行——密码绝不离开浏览器。
功能特性
- 随你输入把任意密码从 0(极弱)到 4(极强)评分
- 根据字符池和长度估算以比特为单位的熵
- 用通俗语言给出一个粗略的离线破解时间估算
- 分解构成:使用了小写、大写、数字和符号
- 标记过短的密码和只用单一字符类别的密码
- 检测常见或已泄露的密码、重复、顺序串和键盘走位
- 带显示开关的隐藏输入,让密码保持隐藏
- 完全在你的浏览器中运行——密码绝不会被上传
如何使用 密码强度检测器
- 把密码输入或粘贴到隐藏字段中
- 阅读强度分数、以比特为单位的熵,以及预估破解时间
- 用「显示」确认你正确地输入了密码
- 修正「我们发现的问题」下列出的每个弱点,然后重新检测
示例
输入
password
输出
Score 0 / Very weak · flagged: very common password · crack time: instantly
"password" 在每个泄露名单上,因此会立即被字典攻击攻破。
常见错误与故障排除
- 一个很长的密码仍然得分很低。 — 仅有长度是不够的。查看「我们发现的问题」列表——一个常见单词、一个像 qwerty 的键盘走位,或一段重复串都会压低分数。混合字符类型并避免可预测的模式。
- 熵看起来很高,但分数被封顶了。 — 熵假定字符是随机的。如果密码与某个常见密码相符或只用一种字符类别,分数会被有意压低,因为真正的攻击者不会盲目地暴力破解它。
- 破解时间看起来太乐观或太悲观。 — 它是一个粗略估算,假定针对一个弱哈希、以每秒约 100 亿次猜测进行快速离线攻击。像 bcrypt 这样缓慢、加盐的哈希会耗时长得多;而一份泄露的明文则完全不需要时间。
常见问题
- 密码强度检测器如何为一个密码评分?
- 它把根据密码长度和字符池估算的熵,与针对结构性弱点的惩罚——常见密码、单一字符类别、重复、顺序串和键盘走位——结合起来,产生一个 0-4 的分数和一个一词评语。
- 这里以比特为单位的熵到底是什么意思?
- 以比特为单位的熵大致是暴力破解该密码所需猜测次数的 log2:长度乘以字符池的 log2。更多的比特意味着指数级更多的可能性,因此 60 位以上明显比 30 位更强。
- 破解时间估算是如何计算的?
- 它把平均猜测次数(由熵推出的搜索空间的一半)除以一个假定的攻击者速度——约每秒 100 亿次猜测,然后舍入到一个可读的单位,比如小时、年或世纪。
- 这个密码检测器会检测哪些弱模式?
- 它会标记过短的密码、只用一种字符类型的密码、与一小份内嵌的极常见密码列表相符的密码,以及包含重复串、像 abcd 的升序或降序、和像 qwerty 或 asdf 的直排键盘走位的密码。
- 把一个真实密码输入这个检测器安全吗?
- 分析完全在你的浏览器中进行,密码绝不会被发送到任何地方,因此测试是安全的。不过,作为一般习惯,请避免把一个正在使用的生产密码粘进任何你并不完全信任的网页。
- 这里的高分能保证我的账户是安全的吗?
- 不能。高分意味着密码本身难以被猜到,但账户安全还取决于每个站点使用唯一密码、泄露暴露情况,以及双因素认证。把分数当作指引,而非保证。
相关工具
- 密码生成器 — 生成强随机密码并附带强度指示器(加密安全)。
- 哈希生成器 — 通过 Web Crypto API 生成 SHA-256 / SHA-1 / SHA-384 / SHA-512。
- Bcrypt 生成器与验证器 — 在浏览器中以所选成本用 bcrypt 哈希密码,或把密码与现有哈希验证。
- TOTP / 2FA 生成器 — 从 base32 密钥生成基于时间的一次性密码(2FA 验证码)。
- UUID 生成器 — 生成一个或多个随机的 UUID v4 值。
- HMAC 生成器 — 在浏览器中用消息和密钥以 SHA-256、SHA-1、SHA-384 或 SHA-512 生成 HMAC 签名。
全部 ArrayKit 工具