实用工具

随机密码生成器

用浏览器的密码学随机源生成强密码。

浏览器本地运行哈希与加密1.6万
免费

结果

结果会显示在这里。

密码来自 crypto.getRandomValues,也就是浏览器提供的密码学安全随机源,而不是 Math.random——后者可预测,绝不该出现在任何凭证附近。每个候选密码都会标出它实际携带的熵,这样你能看见长度到底买来了什么,而不是靠猜。

它是怎么工作的

  • 随机性经 WebCrypto 来自操作系统,并采用拒绝采样,使字母表中每个字符出现的概率相等。
  • 熵由字母表大小和长度算出,以比特为单位显示。
  • 不传输也不保存——密码只存在于这个页面里。

你的数据去了哪里

哪也没去。本工具完全在你的浏览器里运行:你粘贴的文本由页面处理,不会传输到任何服务器,也不会写进任何日志。

本工具会接触密钥和凭证,因此任何一次运行都不会被保存,连你自己的历史里也不会有。

它要花多少

本工具完全免费,不需要登录,也不消耗积分。

常见问题

密码该设多长?
对于交给密码管理器保管的密码,20 位混合字母表已经远远越过了「猜测是薄弱环节」的那条线。对于需要手输的密码,用几个普通单词组成的更长口令更好打,强度也一样。
熵这个数字是什么意思?
它表示在攻击者完全知道生成方式的前提下,需要面对多少比特的猜测量。每多一比特,工作量翻一倍。大约 60 比特以下对资源充足的攻击者是可猜的,80 比特以上则不是。
为什么要排除易混字符?
因为 0/O 和 1/l/I 在需要念出来或从屏幕上抄写时会被认错。这会损失一点熵,用长度补回来即可。

背后的开源项目

本工具是独立实现,并未打包第三方库。dropbox/zxcvbn(MIT)在代码层面做的是同一件事——如果你需要在自己的程序里实现它,从那里开始,而不是调用一个网页。

dropbox/zxcvbn

也常被称作

  • 随机密码生成
  • 强密码生成器
  • 在线密码生成
  • 安全密码