首页 › 开发工具 › 随机密码生成器

随机密码生成器

按所选长度、大写、小写、数字、符号四类字符与易混淆字符排除规则批量生成随机密码,保证每类至少出现一次,并按字符集大小与长度计算信息熵给出弱、中、强、极强强度分级,全程在浏览器本地完成。

16位

日常账号建议 16 位以上,滑块直接拖

字符集(点一下即选中)

数据来源:RFC 4086(随机性要求)与 Shannon 信息熵口径 log2(字符集大小)×长度

生成条数5条
密码长度16位
可用字符集大小89个
信息熵103.6bit
强度分级强(适合重要账号)
随机源crypto.getRandomValues

生成结果

序号密码长度(位)熵(bit)
1L.NP^-2DsITx(@}T16103.6
2H;;*G4qtD<FJ1sU416103.6
3{HnNzew(7!hdE[PA16103.6
4;p^FO}X}p^A>v2Tk16103.6
5ow6X<Y60{]P=2>dq16103.6

强信息熵 103.6 bit · 穷举约需 以人类时间尺度看无法穷举

  • L.NP^-2DsITx(@}T
  • H;;*G4qtD<FJ1sU4
  • {HnNzew(7!hdE[PA
  • ;p^FO}X}p^A>v2Tk
  • ow6X<Y60{]P=2>dq

熵按 log2(字符集大小) × 长度 计算,分级门槛为 60 / 80 / 120 bit,属粗略估算,未考虑口令字典、个人信息与键盘布局模式,因此"极强"不等于绝对安全。按每秒 1e11 次尝试的离线爆破粗算,穷举完整空间约需 以人类时间尺度看无法穷举。所有密码只在本页内存中生成,不发送任何网络请求。

本页所有计算在浏览器内完成,输入内容不会被上传。

计算口径

字符集按勾选类别合并(排除易混淆字符时先剔除 i l 1 I O 0),先各自随机取 1 个字符保证规则满足,再用整体字符集补足到目标长度,最后做 Fisher-Yates 洗牌打乱位置。信息熵 = log2(合并后字符集大小) × 密码长度;分级:小于 60 bit 为弱、60—80 为中、80—120 为强、大于 120 为极强。随机数取自 crypto.getRandomValues,不可用时退回 Math.random 并在结果中标注较弱。

使用说明

  • 注册新账号建议 16—20 位并勾选符号,熵可超过 100 bit
  • 需要在电话里念给对方时勾选"排除易混淆字符",或改用可读的多个单词组合
  • 生成后立刻存入密码管理器,不要用截图或聊天工具传递

常见问题

符号一定要加吗?

长度比字符类别更重要。同样 100 bit 熵,20 位纯小写字母与 14 位四类混合字符都够用;加符号主要防的是只要求字母数字的弱口令爆破字典,但要注意部分网站不允许特殊符号。

排除 i l 1 I O 0 会降低强度吗?

会略微降低:纯字母数字时字符集从 62 个减到 56 个,16 位的熵从 95.3 bit 降到 92.4 bit,影响约 3 bit,换来的是人工辨认与录入更可靠,对需要口头传递的密码通常是划算的。

这个页面会记住我的密码吗?

不会。工具是纯前端脚本,生成过程只有内存中的字符串,没有表单提交、没有网络请求,也没有本地存储写入,关闭页面即消失。