密码生成器

选择随机字符或词组。每个密码都用浏览器的安全随机数生成,熵值(比特)显示它有多难被猜中。不会保存任何内容。

免费 在浏览器中运行 核对于2026年11月10日星期二

此工具在您的浏览器中运行。您输入的内容不会发送给我们。

使用方法

  1. 选择 随机字符 生成密码,或选择 词组密码 生成由单词组成、便于输入和记忆的密码。
  2. 生成字符时,设置 长度,并勾选要使用的字符类别。勾选 排除易混字符,读取密码时就不会把 O 和0、I 和1混淆。
  3. 生成词组时,设置 单词数、分隔符 和 词表。中文页默认使用英文词表,因为本工具没有中文词表,也可以改选土耳其语词表。
  4. 点击某个密码旁的 复制,或点击 全部复制。页面不保存密码:关闭页面后,密码就没有了。

随机选择的方法

每个字符或单词都由 crypto.getRandomValues 抽取,即浏览器为安全用途提供的随机数。一次抽取是一个32位的数。2的32次方通常不是字符池大小的整数倍,因此代码会把取值范围截取到能被字符池大小整除的最大整数,超出截取部分的数会被重新抽取。若没有这一步,某些字符出现的机会会略多于其他字符。

字符池是所选字符类别的总和:26个小写字母、26个大写字母、10个数字和24个符号,共86个。排除易混字符后,字符池为81个。

熵(字符)= 长度 × log2(字符池大小);熵(单词)= 单词数 × log2(词表大小)

熵值与强度等级

熵值以比特计算。从完整字符池中取20个字符的密码,约有128比特。在最坏情况下,如果攻击者知道长度和字符类别但不知道密码本身,每多一个比特,所需的猜测次数就翻一倍。

强度等级是本页自定的经验规则:低于40比特为弱,40至59为一般,60至79为强,80及以上为很强。这些等级描述的是暴力猜测。出现在常见密码列表中的密码,无论熵值多高都很弱,因此不要重复使用任何密码。

  • 从1,024个单词的词表中抽取6个单词,得到60比特,因为每个单词为10比特。
  • 单词是随机抽取的,并非人工挑选,因此即使每个单词都很常见,词组也是安全的。不要在其中加入个人的词语或日期。

示例:20个字符和6个单词

四类字符全部选中并排除易混字符时,字符池为81个,因此20个字符的密码为 20 × log2(81),约126.8比特,属于很强。

从英文词表的1,024个单词中抽取6个单词,词组为 6 × 10 = 60比特,属于强。单词是随机抽取的,所以这6个单词与任何60比特的密码一样安全。

常见问题

密码会被保存或发送到服务器吗?

不会。密码在浏览器中生成并显示在页面上,不会被保存、发送或记录。刷新页面后它们就会消失,因此请先复制需要的密码。

为什么要排除易混字符?

大写字母 O 和 I、小写字母 l 以及数字0和1在朗读或手抄密码时很容易混淆。排除它们让密码更容易输入,代价是熵值略有减少。

使用了哪些符号?

符号为 ! @ # $ % ^ & * ( ) - _ = + [ ] { } ; : , . ? /。引号、反斜杠和尖括号未被使用,因为许多表单和程序会拒绝它们,或者把它们读错。

密码应该多长?

从四类字符中随机生成的16个字符的密码,约有103比特,属于很强。建议使用密码管理器,让每个账户都有各自的这类密码,这样就不必记住它们。

词组密码比普通密码更好吗?

这取决于网站。6到8个单词的词组容易记住,并有60到80比特。有些网站不接受空格或过长的密码,因此请查看它们的规则,并使用它们接受的分隔符。

为什么中文页的词组是英文单词?

本工具目前没有中文词表。中文页默认使用英文词表,共1,024个单词,每个单词为10比特。选择土耳其语词表时,同样有1,024个单词可选,强度相同。

资料来源

数据和文字最近核对于2026年11月10日星期二。

我们使用必要的 Cookie 来运行网站。经您同意后,Google 还会使用广告 Cookie 展示个性化广告。如果您拒绝,仍会看到广告,但广告不会个性化。