强密码生成器

选好长度和字符类型,一次最多生成 20 个密码。随机数来自 crypto.getRandomValues 并用拒绝采样消除偏差,强度数值按你实际选中的字符池计算。

在浏览器本地运行 日常工具

长度

长度限制在 8 到 64 之间:8 是目前多数网站仍能接受的最低位数,而超过 64 后有些网站会悄悄截断,所以在这里更长并不等于更安全。

「排除易混字符」会从所有字符来源(包括自定义字符)中精确去掉这 6 个:I、l、1、O、0 和 |。 「每类至少一个」会让每个已选字符类都至少出现一个字符。

这里输入的内容会并入字符池,并计入下方的熵值;它不会被保存到本地存储。

档位划分:低于 45 比特为「弱」,45–63 为「一般」,64–79 为「良好」,80 及以上为「很强」。

强制「每类至少一个」会使抽样不再是完全均匀分布,因此上面的比特数是略有偏高的高估,绝不会低估。

随机值取自 crypto.getRandomValues(浏览器内置 CSPRNG),并用拒绝采样消除取模偏差,绝不使用 Math.random。

生成的密码

还没有内容,点击「生成」。

不要把这里生成的密码用在已经有密码的账号上。每个密码只生成一次,交给密码管理器保存并自动填充。

本页面没有任何服务端代码,也不会发起请求:密码只存在于你的标签页中,只显示一次,不会被存储、记录或发送;本机上只保留长度与开关等选项。

诚实的边界:如果设备本身已失守,或被键盘记录器控制,它能看到你看到和复制的一切,威胁依然存在。请保持系统与杀毒软件更新,并为重要账号开启两步验证。

使用方法

  1. 设置「长度」(8 到 64)和「生成数量」(1 到 20),再打开需要的字符类型:小写、大写、数字和符号。
  2. 可选「排除易混淆字符」去掉 I、l、1、O、0 和 |;「每类至少一个」确保每个类别都出现;也可以把自定义字符加入字符池。
  3. 点击「生成」,在控件下方查看字符池大小、熵值(比特)以及「弱、一般、良好、强」的强度标签。
  4. 用每个密码的「显示 / 隐藏」切换可见性,再点击「复制」取走需要的那个;「重新生成」得到新一组,「清空」把它们从页面移除。

常见问题

密码真的是随机的吗?会被保存吗?

密码来自浏览器的加密级随机源 crypto.getRandomValues,并通过无偏的拒绝采样逐字符选取,绝不使用 Math.random。生成的密码只存在于当前标签页:不保存、不记录、不发送,设备上只会记住你的长度和开关设置。

密码应该多长?

只靠密码保护的账号,16 位并混合多种字符是稳妥的默认值,约 100 比特熵。工具上限为 64,因为有些网站会悄悄截断更长的密码。建议配合密码管理器,让每个账号使用各自唯一的密码。

为什么熵值说明里提到可能略高估?

强制每个选中类别至少出现一个字符,会让抽取比纯随机略不均匀,所以显示的比特数是轻微高估而不是低估。强度标签的分界为:45 比特以下为弱,45 到 63 为一般,64 到 79 为良好,80 及以上为强。

指南

相关工具