密码生成器:随机或好记
生成既强又记得住的密码。每个密码都附带记忆提示、强度评分和破解时间估计,并在您的设备上生成,绝不发送到任何地方。
🔒 在您的设备上生成,绝不发送到任何地方。您输入或生成的内容不会离开此浏览器标签页:无服务器请求、无统计分析、无存储。
…
生成方式
从所选字符集中得到 78 个候选字符。每个字符集至少保证一个;其余用 crypto.getRandomValues 和拒绝采样(无取模偏差)抽取,然后打乱。
熵: 16 个字符 × log₂(78 种可能) = 100.6 位
关于本工具
工作原理:随机模式使用浏览器的加密随机数生成器(crypto.getRandomValues)和拒绝采样逐个选字符,因此每个字符出现的概率相同。好记模式以一个短语为基础(您自己的,或由工具随机选出的 3–4 个单词),去掉重音符号,随机把部分字母换成形似的数字和符号(leet),加入大写和随机附加字符,并显示每一段来自哪个词。密码短语模式从 EFF 大词表中随机串联 4–6 个单词。
为什么随机附加字符很重要:破解工具会优先尝试字典词和常见短语的常见 leet 替换(a→4、e→3、o→0),所以只替换一个常见短语,强度远不如看上去那么高。真正让好记密码变强的,是那 2–3 位不是您自己选的随机数字和 1–2 个符号。同理,工具随机选的单词也比您自己想的短语更安全。
建议:使用密码管理器,不要在多个网站重复使用同一密码,并尽可能开启双重验证(2FA)。更多日常工具:百分比计算器、小费计算器和年龄计算器。
公式
随机:熵 = L × log₂(N)(四类全选时 N = 78)密码短语:熵 = 单词数 × log₂(7,776) ≈ 每词 12.9 位随机短语:≥ 单词数 × log₂(4,438) + log₂(11) + 2·log₂(10) + log₂(单词数)索引 = x mod n;当 x ≥ 2³² − (2³² mod n) 时重抽(x = 随机 uint32)zxcvbn 评分 0–4:猜测次数 < 10³、10⁶、10⁸、10¹⁰、≥ 10¹⁰
计算方法
- 选择模式:随机、好记或密码短语。
- 设置选项:长度与字符类型、短语来源与随机附加字符,或单词数与分隔符。
- 从 5 个候选中选一个,查看其 zxcvbn 评分和估计破解时间。
- 借助记忆提示(按词分段或每个字符一个读法)记住它,然后复制。
- 保存到密码管理器,只在一个网站使用,并开启双重验证。
常见问题
这个密码生成器安全吗?
安全。所有计算都在您的浏览器中通过 crypto.getRandomValues(与密码管理器相同的加密随机源)完成。您的短语和密码绝不会发送到服务器、被记录、存储、放进地址栏或计入统计分析。页面加载后即使断网也能使用。
leet 替换的密码安全吗?
单靠 leet 替换并不安全。破解工具会对字典词和常见短语尝试 a→4、e→3、o→0 等常见替换,所以 p4ssw0rd 几乎瞬间就会被破解。让好记密码真正变强的是您没有自己选择的随机性:工具随机选的单词、逐字母的随机替换,以及“随机附加字符”选项加入的随机数字和符号。请保持该选项开启,并把 zxcvbn 评分当作估计而非保证。
密码应该多长?
随机密码建议至少 12–16 个字符并包含全部四类字符;从 78 个字符中选 16 个约为 100 位熵。密码短语用 5–6 个随机单词(约 65–78 位)就很强,而且更容易输入。NIST SP 800-63B 要求服务至少接受 64 个字符,因此在允许的地方更长更好。
记忆提示是如何工作的?
在好记模式下,密码被拆成几段,每段对应原来的单词,例如 Purp13 = “purple”、T!g3r = “tiger”、#47 = 随机附加,并给出“Purple tiger jumps #47”这样的句子。在随机模式下,展开“如何记住它”即可得到每个字符的读法,例如 k7#Q = Kilo、七、井号、大写 Quebec。按“隐藏”时提示也会一起隐藏。
什么是密码短语?为什么用 EFF 词表?
密码短语是几个随机单词连在一起,例如“cactus-gravity-snorkel-ember-tulip”。电子前哨基金会(EFF)的大词表收录了 7,776 个常见且易区分的英文单词,每个词约贡献 12.9 位熵。强度来自随机选择,而不是生僻词,所以单词必须由生成器来选,而不是您自己选。