密码生成器(加密安全 + 强度评估)
采用 crypto.getRandomValues(银行级别的随机源),不是 Math.random。可调节长度与字符种类,熵值显示直观告诉你密码有多强。
工作原理
为什么本生成器真的安全
网上多数「密码生成器」使用 Math.random(),其输出可被攻击者根据少量历史值预测。本工具使用 Web Crypto API 的 crypto.getRandomValues,这与 HTTPS 会话和操作系统密钥链使用的是同一套加密随机源。每个字符都从所选字符集中均匀采样。
生成完全在您的浏览器中完成。密码不会通过网络传输,也不会接触我们的服务器。即使域名被入侵,攻击者也没有任何可窃取的数据,因为我们什么都不存。
强度评估的算法
强度标签由熵决定: bits = log₂(字符集大小) × 长度。10 位仅小写字母的密码 = log₂(26) × 10 ≈ 47 位,容易被攻击者离线破解。16 位包含全部 4 类字符的密码 ≈ 105 位,足以应对绝大多数威胁。区间为: <50 弱、50–80 中、80–128 强、≥128 极强。
对应到现实: 弱 = 中等攻击者数日可破; 中 = 僵尸网络数年; 强 = 当前不存在现实威胁; 极强 = 包括量子计算在内的未来威胁也有充足余量。
长度比复杂度更重要
数学上,长度每加一个字符,搜索空间约翻倍(取决于字符集);字符集每增加一类只是略微扩大空间。20 位仅小写比 12 位混合大小写+符号熵更高且更易输入。若想记忆,从 7000 词列表里随机选 4 个词 ≈ 51 位熵,与 8 位强混合密码相当。
「排除易混淆字符」选项会去除 0/O、I/l/1 等易混淆字符,密码强度略降但更易朗读或抄写。打印或转录时建议开启,密码管理器场景下建议关闭。
常见问题
›这真的安全吗?
是的。使用 Web Crypto API 的安全随机源,与 HTTPS 基础设施同源。浏览器厂商提供的实现经过审计。
›密码会离开我的浏览器吗?
永远不会。生成、熵值计算、复制到剪贴板都在本地完成。我们没有接收端点。
›16 位够用吗?
对在线账号几乎总是够。密码管理器主密码或加密密钥建议 24+,或 6 个词的密码短语。
›强度评估为何对我的长密码不积极?
评估只看你启用了哪些字符类。仅小写时字符集只有 26,长度增加的收益有限。
›「位」是什么意思?
你的设置可能产生的密码总数的 log₂。80 位 ≈ 1.2 × 10²⁴ 种可能,远超当今暴力破解能力。
›应该启用符号吗?
条件允许时建议启用。每个符号大致增加一个数字+字母的熵。某些网站不允许时,增加长度补足。
›「排除易混淆字符」值得用吗?
需要手动输入或抄写时启用。仅密码管理器使用时关闭即可——可读性收益没意义。
›同样的密码可能生成两次吗?
理论上可能,但即便 50 位熵,每两次生成碰撞的概率也是 1/2⁵⁰ ≈ 10¹⁵ 分之一,实际不可能发生。
相关工具
最后更新: