跳到主内容
UniKit

密码短语生成

Diceware 风格生成易记的多词密码短语:内置 1200 个常用英文短词,可选单词数、分隔符、大小写变换、追加数字与符号,并给出熵估算与在线/离线破解时间估算。

浏览器本地运行所有计算都在你的浏览器里完成,数据不会离开本机。

生成设置

词表内置 1200 个 3–6 字母的常用英文短词;随机数来自浏览器的 crypto.getRandomValues,取词用拒绝采样避免取模偏置。

大小写

生成的密码短语

点击「生成密码短语」开始。

这个工具能做什么

  • 给 Wi-Fi、服务器或磁盘加密口令找一个既好记又难猜的短语:五个词大约 51 位熵,比「生日+感叹号」强得多。
  • 给不同系统分配不同口令:每次重新生成即可,避免一处泄露到处复用。
  • 向同事解释口令强度:把「追加数字与符号」打开,对比熵和破解时间估算,说明为什么多加一个词比多加一个符号更有效。
  • 需要手抄或口头传达口令时,用分隔符和全小写让短语更容易读出来。

示例

输入

单词数 3、分隔符 -、全小写、不追加数字与符号(随机源固定时取词表前三个词)

输出

熵 = 3 × log2(1200) ≈ 30.69 位,平均尝试次数 ≈ 2^29.69,形如 able-add-age 的三词短语

真实点击时每个词都是随机抽取的,这里只说明熵的计算方式:词表 1200 个词,每词约 10.23 位熵。

常见问题

为什么多加一个词比多加一个符号更划算?

每加一个词带来 log2(1200) ≈ 10.23 位熵,而追加一个符号只加 log2(13) ≈ 3.7 位、两位数字只加 log2(100) ≈ 6.6 位。词还更好记:六个随机词的短语比十二位随机字符更容易默写。

词表是怎么来的,可靠吗?

词表是自建的 1200 个 3–6 字母常用英文短词,直接写在源码里,不加载任何外部文件,也不是官方 Diceware 表(官方表 7776 个词)。随机取词时用拒绝采样去掉会引入偏置的随机值,所以每个词的出现概率相同。

熵和破解时间是怎么算的?

熵 = 单词数 × log2(词表大小),再按需加上数字项 log2(100) 与符号项 log2(13)。破解时间按「平均需要尝试一半搜索空间」估算,分在线(1000 次/秒)、离线慢哈希(1 万次/秒)与离线快哈希(100 亿次/秒)三档。

随机大小写会不会增加强度?

几乎不会,所以不计入熵。攻击者尝试口令时通常会同时试大小写变体,变换只是让人更难一眼看出词边界。真正增加强度的是增加单词数。

生成的短语会被上传或记录吗?

不会。词表在本地,随机数来自浏览器的 crypto.getRandomValues,生成过程不发任何请求;刷新页面后结果就消失,也没有历史记录。

关键词:passphrasepassphrase generator密码短语Dicewareentropy熵估算memorable password多词密码破解时间random words

同类工具