Diceware 口令生成器
在你的浏览器中,用 EFF 大词表生成好记又具备加密安全性的 Diceware 口令,并实时显示以比特为单位的熵。
口令是在你的浏览器中,用打包的 EFF 词表副本本地生成的——任何骰子结果、单词或结果都绝不会上传。尽管如此,请把任何生成的口令当作真正的机密对待,将其存入密码管理器,而不要以明文重复使用。
更想要一个字符密码?打开密码生成器。
关于 Diceware 口令生成器
这款 Diceware 口令生成器会把 7776 个词的 EFF 大词表中的随机单词串在一起,构建出一个你真的记得住、而机器却猜不到的口令。每个词都用 crypto.getRandomValues 选取,因此每次抽取都不可预测,并贡献约 12.9 比特的熵——六词口令约为 78 比特,远超实际暴力破解的门槛。选择词数,挑选分隔符,可选地把每个词首字母大写,并追加一个数字或符号以满足严格的密码规则。熵读数会实时更新,让你在把结果用于密码管理器主密钥、磁盘加密口令或 SSH 密钥口令之前,就能精确看到它有多强。它专为开发者和注重隐私的人而设计,一切都在你的设备上运行,绝不会传输任何口令。
功能特性
- 从完整的 7776 词 EFF 大词表(现代 Diceware 标准)中抽取单词
- 通过 crypto.getRandomValues 以无偏采样进行加密安全的选词
- 用滑块调节词数(四到十二个词)
- 选择分隔符——连字符、空格、点、下划线,或自定义字符串
- 可选地把每个词首字母大写,做出 Correct-Horse 风格的口令
- 追加一个随机数字和/或符号,以通过严格的复杂度规则
- 以比特为单位的实时熵读数,外加从「弱」到「非常强」的强度计
- 完全在你的浏览器中运行,因此生成的口令绝不会离开你的设备
如何使用 Diceware 口令生成器
- 拖动「词数」滑块,选择你的口令应包含多少个词。
- 选择分隔符,并按需切换「大写」「加数字」或「加符号」。
- 查看以比特为单位的熵和强度标签,确认它足够强。
- 点击「重新生成」进行一次新的抽取,然后把口令复制到剪贴板。
示例
输入
6 words, hyphen separator, capitalize off
输出
acetone-driveway-mumble-pacifist-repayment-untimely
六个 EFF 词表单词以连字符相连,约提供 78 比特的熵。
常见错误与故障排除
- 某个网站因口令没有数字或特殊字符而拒绝它。 — 启用「加数字」和「加符号」以各追加一个——单词本身仍承载着熵,附加项只是为了满足复杂度规则。
- 口令中的空格在粘贴进表单时被弄乱了。 — 把分隔符切换为连字符、点或下划线,它们比空格更可靠地经受住复制粘贴和 shell 参数。
- 一个四词口令只被评为「一般」。 — 增加词数——每多一个词约增加 12.9 比特,因此五或六个词可达到「强」到「非常强」。
- 口令太长,在手机上不好打。 — 更少、首字母大写的单词加上一个附加符号,可在保持好记的同时缩短长度,不过更短的短语会牺牲一些熵。
常见问题
- 什么是 Diceware,为什么用口令而不是密码?
- Diceware 从一个编号词表中选取随机单词——传统上是靠掷骰子——构建一个人类容易记住、又有足够熵来抵抗猜测的口令。随机单词比一堆打乱的符号远远更好回忆,同时依然很强。
- 这款生成器用的是哪个词表?
- 它使用 7776 个词的 EFF 大词表,也就是电子前哨基金会推荐的那个列表。每个词提供 log2(7776),即每词约 12.925 比特的熵。
- 一个 Diceware 口令应该有多少个词?
- 五个词(约 65 比特)是一个合理的下限,六个词(约 78 比特)是一个强而常见的选择。对于保护众多机密的主密码,七或八个词能带来充裕的安全余量。
- 加数字或符号会让它更安全吗?
- 只是略微。选词本身已经提供了熵;一个附加的数字或符号只增加几个比特,主要是为了满足要求数字或特殊字符的网站。本工具在报告的比特数中不计入这些附加项。
- 选词真的是随机的吗,它会重复单词吗?
- 每个词都用 crypto.getRandomValues 独立选取,并用拒绝采样得到无偏索引,因此单词可能重复——这是预期的,也不会削弱数学基础。熵公式假设的是有放回的独立抽取。
- 生成的口令会被发送到服务器吗?
- 不会。Diceware 口令生成器完全在你的浏览器中运行。每个口令都用打包的词表在本地组装,绝不会离开你的设备,也不会到达 ArrayKit。
相关工具
- 密码生成器 — 生成强随机密码并附带强度指示器(加密安全)。
- 密码强度检测器 — 在浏览器中测试密码强度,查看它的熵、预估破解时间和弱点。
- Bcrypt 生成器与验证器 — 在浏览器中以所选成本用 bcrypt 哈希密码,或把密码与现有哈希验证。
- UUID 生成器 — 生成一个或多个随机的 UUID v4 值。
- 哈希生成器 — 通过 Web Crypto API 生成 SHA-256 / SHA-1 / SHA-384 / SHA-512。
- TOTP / 2FA 生成器 — 从 base32 密钥生成基于时间的一次性密码(2FA 验证码)。
全部 ArrayKit 工具