密码学安全的词组口令:自选词数、分隔符、大小写;实时熵值;全程浏览器本地,口令绝不进 URL。
- 本地处理
- 分类 编码加密
- 适合 快速检查小 payload、令牌、哈希和编码值。
说明: 英文词表为 1296 个词(每词约 10.34 bits),是精选的 EFF short 风格子集,不是完整的 7776 词表。想达到 EFF "long" 词表的熵,多加 1~2 个词即可。
这个工具能做什么
基于 crypto.getRandomValues(密码学安全随机源,非 Math.random)的 Diceware 口令短语生成器。Diceware 的核心思想是:用真随机从一张固定词表 里抽几个词拼成口令,而不是让人脑补一串"看着复杂"的字符。原因有两层。 其一,人选的密码总会落在可预测的套路里(生日、键盘相邻键、l33t 替换), 真实熵远低于看上去的位数;其二,纯随机字符虽然强,却几乎背不下来,于是 被写在便利贴或反复复用。词组口令两头兼顾:`cedar-violet-mantle-quartz` 这样的串念几遍就记住了,而每个词的随机性又把强度顶上去。 工具从精选的 1296 词英文词表(或 387 个常用中文双字词)随机抽取 3~10 个 词,自选分隔符(空格 / 连字符 / 点 / 无),可选首字母大写或追加随机数字 / 符号,并实时给出精确的熵值(bits)、强度评级和离线破解时间估算。 熵与词数是线性关系:英文每加一个词约 +10.34 bits(log2(1296)),6 个词 约 62 bits;中文双字词每词约 8.60 bits(log2(387)),词池更小所以读数会 如实偏低,可多加词补足。我们诚实标注真实词表大小,而不是冒充完整的 EFF 7776 词表来夸大数字。生成的口令被当作敏感数据:绝不保存、绝不写进 URL, 只有设置参数可分享。100% 浏览器本地运行。
工具细节
- 输入
- 数值
- 页面会根据工具类型展示文本框、数值控件、文件选择或结构化输入。
- 输出
- 即时结果 + 复制 + 预览
- 结果区优先给出可操作结果,支持项会显示复制、下载或可视化预览。
- 隐私
- 浏览器本地处理
- 主工具逻辑未发现外部 API 调用,输入通常留在当前标签页内处理。
- 保存 / 分享
- 可分享链接状态
- 关键设置会进入 URL,复制链接后别人能复现同一组参数。
- 性能预算
- 首屏 JS ≤ 14 KB
- 没有声明 WASM 依赖,适合快速打开和移动端使用。
- 适用场景
- 编码加密 · 程序员
- 分类和职业标签用于推荐相关工具、组织内链,并帮助用户快速判断是否适合当前任务。
怎么用
-
1. 输入
把内容粘贴或拖入工具面板。
-
2. 处理
点击按钮,在浏览器内本地处理,文件不上传。
-
3. 复制 / 下载
一键复制结果或下载到本地。
Diceware 口令短语生成器 适合怎么用
适合做浏览器本地的编码、解码、哈希、令牌检查和可分享转换。
适合编码任务
- 快速检查小 payload、令牌、哈希和编码值。
- 把值整理好再放进 API、URL、文档或客服工单。
- 输入可能敏感时,尽量避开账号型在线工具。
编码检查项
- 真实密钥不要随便粘贴,除非确认能接受本地浏览器处理。
- 分享结果前确认这个操作是否可逆。
- 哈希值要核对算法和大小写是否符合对方要求。
下一步可以接着做
这些入口会把当前任务接到更完整的工具链里。
真实使用场景
生成一个真能背下来的主密码
密码管理器的主密码是唯一一个你不能存进管理器里的凭证, 得记在 脑子里, 还要在手机、被锁住的电脑、别人机器上手敲。一串 20 位随机 字符在这种场景下太难顶。换个做法: 选英文模式、6 个词、连字符, 附加项全关, 得到类似 `cedar-violet-mantle-quartz-ember-trout`, 62 bits, 评级"强", 今晚念三遍就能记一辈子。把它敲进管理器的主密码 框, 然后关掉这个页面。整个过程口令没有被保存, 也没有发到任何地方。
生成一个家里人不会念错的 Wi-Fi / 物联网密码
访客 Wi-Fi 密码写成 `xK9#mq$2Lp!`, 贴在冰箱上每次都被照着抄错, 客人直接放弃。生成一个 4 词口令并打开"追加随机数字": `garden-rocket-pillow-lemon7`。隔着房间也读得清, 用电视遥控器输 也不上火, 而 ~42 bits 远超路过型攻击者对 WPA2 的暴力尝试。把这四个 单词用大白话写在便利贴上, 谁都不会敲错。
为共享团队密码库准备一个应急恢复短语
你在给团队的密钥库设置一个"破玻璃"应急凭证, 而它在事故时要靠电话 口述, 不是粘贴。用 7 个词、空格分隔、每词首字母大写: `Harbor Velvet Cinder Maple Otter Quartz Drift`。电话里把每个词 拼一遍, 对方复述确认。~72 bits 足够做密码库根凭证, 而且"拼七个 词典单词"在延迟和压力之下, 比"拼 H、大写 K、美元符号、九……" 靠谱得多。
不用密码管理器也能给每个网站配独立口令
你就是不想装密码管理器, 但又想每个站点用不同凭证。给每个账号现 生成一个 5 词口令(`bronze-meadow-saddle-twine-pelican`), 写进 一本放在家里的纸质本子, 就完事。每个约 52 bits, 够强、偶尔重敲 也记得住, 而且因为每个都是独立随机的, 一个站点泄露了也透露不出 其他站点的任何信息。本子始终离线, 口令从不进 URL、不上服务器。
给不信熵值的同事做个现场演示
团队里有人坚持 `P@ssw0rd2024!` 已经"够复杂了"。把这个工具和密码 强度检测器并排打开。给他看一个 6 词口令读数是 62 bits / 破解要 几百年, 而他那个 11 位 l33t 密码只有 ~36 bits, 还在每一份泄露字典 里。上下拖词数滑块, 看熵值每加一个词跳约 10.3 bits, 一个活的、 诚实的演示, 说明"靠随机性堆长度"为什么胜过"字符大杂烩"。每词 bits 的读数让这套数学没法被糊弄过去。
常见踩坑
把首字母大写(或加个能猜到的 "1!" 后缀)并不能实质提升熵, 攻击者默认会试这些变换。这个工具刻意不把首字母大写计入 bits 读数。真正的强度来自加词。如果某个站点要求"必须含大写"那就开, 但同时也多加一个词。
跨站点复用同一个口令依然是复用。6 词口令对暴力破解很强, 但你要是把它敲进钓鱼页面、或者某个被攻破的站点把它明文存了, 长度救不了你。给每个高价值账号现生成一个新的。
别手动"优化"输出。有人会打乱词序或把某个字母换成符号求心安, 但手动改动会聚集到可预测的模式上, 反而可能降低有效熵。相信随机抽取的结果; 想更强就加词数, 英文每加一词恰好 +10.34 bits。
隐私说明
口令使用 crypto.getRandomValues 生成(浏览器的密码学安全随机源, 和 TLS 用的是同一个), 全程在本标签页内完成。它绝不通过网络发送、 绝不写入 localStorage/sessionStorage, 而且(最关键的)绝不放进 URL。 只有你的*设置*(词数、分隔符、语言、大小写、附加项)会编码进分享 链接, 所以一个"分享设置"的 URL 不会把凭证泄露进浏览器历史、服务器 访问日志或截图里。英文词表(1296 词)和中文词表(387 个双字词)都 打包进了页面, 不发任何请求。关闭页面, 口令就从内存里消失了。
常见问题
类似工具组合
做你这行的人, 还会一起用这些。