使用方法
- 打开页面默认就带示例:输入框里是「P@ssw0rd!」,结果区已经显示长度 9、各级计数、字符池 R=95、熵≈59.1 bit 与评级「中」,你不需要先输入任何东西。
- 把你要评估的密码粘进输入框,页面会自动判断它命中了哪些字符集合。
- 在输入框里按回车也能立即计算,不必点按钮;结果区是当场算出来的,不是固定文案。
- 点「计算熵值」按钮,页面统计长度与大小写数字符号的数量,算出字符池 R 与熵值,并给出弱、中、强评级;点「复制结果」复制统计文字。
- 输入为空时会点名当前字段提示你补全,不会硬凑出一个空结果,避免你误以为计算成功。
- 本页不联网、不写本地存储,刷新即回到默认示例,所有计算都在你自己的浏览器里完成,且结果不展示密码本身,输入内容不会离开设备。
这个 密码熵值计算器 能解决什么
密码熵值计算器 解决的是「密码到底够不够强」这个判断难题。人眼很难从长度与字符种类看出真实强度,像 P@ssw0rd 这类看似复杂的密码,熵值其实并不高。本工具用信息论口径把强度量化成比特数,再给弱、中、强三级,帮你客观比较不同密码。
第一类用途是注册或修改密码时的自检。设完新密码顺手贴进来,看熵值是否达到「强」的标准,避免用了一个看起来花哨实则脆弱的密码。
第二类用途是安全科普与教学。很多人以为加个符号就一定安全,本工具把字符池 R 和长度并列展示,直观说明「长度与字符种类共同决定强度」,比口头解释更省力。
第三类用途是团队密码策略制定。管理员据此设定最小熵值红线,例如要求所有账号密码熵不低于 60 bit,比单纯「至少 8 位含特殊字符」的模糊规则更科学。
第四类用途是密码生成器的反向校验。生成器产出一批候选后,用本工具逐一测算熵值,挑出真正高强度的那几个,确保生成结果达标。
第五类用途是安全审计与合规。对企业账号做强度普查时,用熵值排序能快速定位低强度账户,优先推动整改,也便于出具可量化的审计报告。
第六类用途是产品文案里的强度提示。做注册页时,可借鉴本工具的评级口径,给用户即时、量化的强度反馈,提升整体账户安全。
第七类用途是文档与教程里的示例展示。写安全文档、录教学视频时,常常需要把同一密码同时展示组成与熵值,读者才能直观对比。本工具把统计与评级并排输出,截图或复制都方便。
值得一提的是,本页所有计算都在本地完成,不联网也不上传,且结果只给统计与熵值、绝不回显密码本身,这点和需要登录的在线检测站不同,更适合处理真实口令。
原理和变量
密码熵值计算器 的核心是「字符池乘以长度取对数」,不含随机成分,因此同一段输入永远得到同一组输出,可被手算复核。先扫描每个字符,判断它属于小写字母(26 个)、大写字母(26 个)、数字(10 个)还是符号(33 个);字符池 R 等于所有被命中集合的大小之和(只计是否命中,不计出现次数)。熵 bits = 长度 × log2(R)。最后按阈值评级:小于 40 为弱,40 到 70 为中,大于 70 为强。注意熵衡量的是「随机性空间」,不评价密码是否常见,字典词仍可能被猜中。
为什么要按集合求和而不是按出现次数?因为攻击者按字符集规模穷举,只要某类字符出现过,整个集合就进入了猜测空间,所以 R 取集合大小之和。下面变量表说明各环节含义。
| 变量 | 含义 | 说明 |
|---|---|---|
| len | 密码长度 | 字符个数 |
| R | 字符池 | 命中集合大小之和 |
| log2(R) | 单字符熵 | 每选一个字符的信息量 |
| bits | 总熵 | len × log2(R) |
| rate | 评级 | 弱 / 中 / 强 |
完整示例
下面这组示例全部由页面算法原样得出,可直接对照你的手算。以「P@ssw0rd!」为例:长度 9;含小写(s,s,w,r,d 共 5)、大写(P 共 1)、数字(0 共 1)、符号(@、! 共 2),四个集合全部命中,R=26+26+10+33=95;log2(95)≈6.570,熵=9×6.570≈59.1 bit,落在 40 到 70 区间,评级为「中」。与上方结果区、下方卡片和对照表完全自洽,全程无随机、可逐字复核。如果你把密码改成纯小写「password」(长度 8,R=26),熵=8×log2(26)≈37.6 bit,评级「弱」,算法始终不变。
如果你想验证手算,只要数出命中了哪几类字符、算出 R,再用长度乘 log2(R),必然和本工具一致。这个字符池法也是你在不支持本页的环境里手动复现结果的可靠办法。
P@ssw0rd!
R=95(四类全中)
≈59.1 bit · 中
示例输入:P@ssw0rd! 长度 9 小写 5 大写 1 数字 1 符号 2 字符池 R=95 熵≈59.1 bit 评级:中
常见密码熵值对照表
下表列出常见密码对应的长度、字符池、熵值与评级(共 14 行),前 12 行直接展示,点「加载更多」展开剩余项。你可以一键导出 CSV(带 BOM,Excel 直接认中文)或复制 TSV 粘进表格软件。表里所有结果都由本页同一逻辑得出,无随机、可复核。注意这些是示例口令,真实使用请选更高熵值。
| 示例密码 | 长度 | 字符池 R | 熵(bit) | 评级 |
|---|---|---|---|---|
| P@ssw0rd! | 9 | 95 | 59.1 | 中 |
| password | 8 | 26 | 37.6 | 弱 |
| PASSWORD | 8 | 26 | 37.6 | 弱 |
| 12345678 | 8 | 10 | 26.6 | 弱 |
| a1b2c3 | 6 | 36 | 31.0 | 弱 |
| Aa1! | 4 | 95 | 26.3 | 弱 |
| qwerty | 6 | 26 | 28.2 | 弱 |
| Qwerty123 | 9 | 62 | 53.6 | 中 |
| letmein | 7 | 26 | 32.9 | 弱 |
| Tr0ub4dour&3 | 12 | 95 | 78.8 | 强 |
| abcdefgh | 8 | 26 | 37.6 | 弱 |
| Xy7# | 4 | 95 | 26.3 | 弱 |
| admin | 5 | 26 | 23.5 | 弱 |
| Sunshine9 | 9 | 62 | 53.6 | 中 |
结果边界与错误提示
- 密码为空时,提示「密码不合法:不能为空」,页面不会自作主张编出一个空统计,避免你误以为计算成功。
- 字符集判定只看是否命中:出现一次小写和出现五次小写,对 R 的贡献相同,这是按字符集穷举口径的预期行为。
- 符号集合按 33 个常见符号计,若密码含有极生僻符号,R 仍只计一次符号集合,不会重复累加。
- 评级阈值为小于 40 弱、40 到 70 中、大于 70 强,边界值如正好 40 或 70 归入「中」,这是预期规则。
- 结果区与错误区都带 role="alert" 语义,内容一变就会被屏幕阅读器播报;所有计算本地完成,不联网也不写存储,刷新即还原默认示例。
- 熵值衡量随机性空间,不判断密码是否在字典里;像「P@ssw0rd」这类常见改造词,熵虽中但仍可能被猜中,请结合字典检查。
- CSV 导出在文件头写入 UTF-8 BOM(\ufeff),Excel 打开中文不会乱码;TSV 复制是纯制表符分隔文本,粘进任意表格软件都会自动分列。
- 本工具只做熵值统计,不保存、不回显密码本身;结果仅展示长度与各级计数,保护你的口令不被泄露。
常见问题
为什么加符号熵值还是可能很低?
因为熵由长度与字符池共同决定。像「Aa1!」虽然四类全中(R=95),但长度只有 4,熵≈26.3 bit 仍属弱。提升强度最有效的方法是同时加长并扩大字符种类。
字符池 R 是怎么算的?
先判断密码命中了小写(26)、大写(26)、数字(10)、符号(33)中的哪些集合,R 等于被命中集合的大小之和,只计是否命中、不计出现次数。
熵值高就一定安全吗?
不一定。熵衡量的是随机性空间,不判断密码是否常见。一个高熵但来自字典词的密码仍可能被猜中,建议配合字典检查与加盐哈希使用。
为什么结果里看不到我的密码?
出于隐私考虑,结果只展示长度、各级计数、字符池、熵值与评级,绝不回显密码本身。输入框里你输入的内容也只在本地计算,不会上传。
评级阈值是多少?
小于 40 bit 为弱,40 到 70 bit 为中,大于 70 bit 为强。可按需调整红线,例如要求重要账号不低于 60 bit。
导出的 CSV 为什么带 BOM?
因为 Excel 打开无 BOM 的 UTF-8 文件时常把中文显示成乱码,BOM 能让 Excel 正确识别编码。TSV 复制走剪贴板不经文件,所以不需要 BOM。
我的密码会上传吗?
不会。所有字符只在浏览器本地统计,不联网、不写存储,刷新即还原默认示例,且结果不展示密码本身,没有任何数据离开你的设备。
能批量测很多密码吗?
本页一次处理一个密码。若需批量,逐条粘贴计算即可;理解「字符池乘以长度取对数」的方法论后,你也能把它写成脚本批量跑。