工具用的顺手吗?
你的反馈能帮助我们做得更好
计算文本或数据序列的信息熵值,评估不确定性与随机性
基于字符频率计算 Shannon Entropy(以 bit/char 表示)
请输入文本后查看计算结果
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
香农熵用于描述一个离散符号分布的不确定程度。该计算器把输入文本按字符统计出现频率,输出每字符熵值(bit/char)、总熵(bit)、不同字符数和文本长度。它衡量的是这段样本的经验频率分布,不是对文本含义、质量或密码抗攻击能力的判断。
若第 i 种字符出现概率为 pᵢ,经验熵为 H = −Σ pᵢ log₂(pᵢ)。概率由字符计数除以总字符数得到;对每种不同字符累加。对空输入,各统计量为零。总熵是每字符熵乘以工具统计的文本长度。
pᵢ = nᵢ/N;H = −Σᵢ pᵢ log₂(pᵢ);总熵 = H × N
其中 N 为输入长度,nᵢ 为某字符的出现次数;熵单位为 bit/char,总量单位为 bit。
若输入只有一种字符,例如“AAAA”,该字符经验概率为 1,log₂(1)=0,所以每字符熵为 0。输入“ABAB”中 A 和 B 各占一半,熵为 1 bit/char;长度为 4 时,总熵为 4 bit。这个结果来自样本中字符频率均匀,不代表任何后续字符必然随机。
均匀分布在固定字符集合内会产生较高熵值;某些字符明显占多数时,熵值通常较低。增加字符种类或改变分布会改变结果,即使文本长度不变。结果保留六位小数显示,细小差别可能受显示舍入影响。
工具按 JavaScript 字符串迭代的 Unicode 码点计数,并区分大小写;空格、换行和标点也参与字符频率统计。不同字符数是样本中出现过的不同计数单位数,长度是同一计数方式下的输入长度。部分由多个码点组成的可见符号(例如带组合符号的字形)可能被计作多个单位,因此“看起来的字数”未必等于统计长度。
中文汉字、英文字母、数字、空格和标点都参与统计。需要比较两段文本时,先统一大小写、空格、换行和编码处理口径;工具不会自动清洗或标准化文本。
在输入框粘贴要分析的文本、代码片段或字符序列。
查看每字符熵、总熵、不同字符数和输入长度;空白文本会显示零值。
复制每字符熵数值,或通过页面分享功能携带输入参数;分享前检查文本是否包含敏感内容。
分析两段格式相同的样本文本,观察字符频率分布差异;比较前统一换行和空格等预处理方式。
检查字符种类和频率是否集中,可作为探索性统计的一项输入,不据此判断文件格式是否有效。
用单一字符、交替字符和均匀符号序列做小样本演示,观察概率改变如何影响经验熵。
把已知文本中的字符频率代入公式,得到的是该样本的经验分布熵。它不等于生成该文本时使用的随机过程熵,也不揭示攻击者对某个密码的猜测顺序。短样本的频率估计尤其有限;重复模式、常见短语和人为选择习惯不会由此自动建模。
因此不要把 bit/char 结果直接当作密码强度分数、加密质量结论或可压缩比例。评估密码应考虑生成机制、长度、随机性和攻击模型,并使用专门的安全指导。
指南
按步骤完成操作,并通过示例核对输入与结果。
粘贴样本文本,确认是否要把大小写、空格、换行和标点都纳入统计;工具按原字符计数且区分大小写。
读取每字符熵、总熵、不同字符数和输入长度。
比较不同文本前,先用相同规则整理样本;复制结果时注明样本和预处理方式。
场景
查看这项工具在不同工作与生活流程中的用法。
可先比较“AAAA”“ABAB”和由更多字符组成的序列,理解频率均匀程度对熵的影响。分析代码或日志时,可以把结果用于描述字符分布,但应结合具体任务、字符编码和样本长度解释。
问答
集中解答高频疑问与容易混淆的问题。
只有一种字符,经验概率为 1,−1×log₂(1)=0,因此每字符熵与总熵均为零。
不表示。这里统计已输入字符串的字符频率,没有分析密码生成过程、常见模式或攻击者的猜测策略,不能单独作为密码强度结论。
长度是参与统计的字符计数单位总数;不同字符数是其中互不相同的单位数量。大小写、空格和标点分别计入。
可见的单个字形可能由多个 Unicode 码点构成,而工具按码点遍历计数,不按屏幕上的字素簇计数。
须知
使用前了解适用范围、结果限制与必要提醒。
经验熵描述给定样本的字符频率分布,不是密码安全评分、随机数质量证明或加密检测结果。不要为了获得高分而把真实密码或机密文本粘贴到不确定其处理方式的网页;分享输入参数前也应确认内容适合公开。
推荐
查找相关工具、专题与可用的 API 能力。