工具用的顺手吗?
你的反馈能帮助我们做得更好
计算文本重合指数(IC),用于密码分析和语言识别,支持英文字母频率统计
请输入至少 2 个字母的文本以计算重合指数
重合指数(Index of Coincidence, IC)是一种统计量,用于衡量文本中字母分布的均匀程度。它在密码分析中特别有用,可以帮助判断文本是否经过加密,以及可能使用的加密方法。
IC 值接近 0.0667 表示文本可能是自然语言(如英文);IC 值接近 0.0385 表示文本可能是随机的或经过良好加密的。归一化 IC 将结果乘以 26(英文字母数),使其更易于解释。
概览
了解工具能解决的问题、计算或处理逻辑,以及数据边界。
一段文本保留 87 个英文字母后,如果随机选出两个不同位置,重合指数(Index of Coincidence,IC)表示这两个位置恰好是同一字母的概率。字母频率越集中,重复配对通常越多,IC 越高;各字母出现得越均匀,IC 往往越低。这个统计量关注的是字母分布,不读取词义,也不会直接解密文本。
计算范围固定为 ASCII 英文字母 A–Z:大小写合并,空格、换行、数字、标点、汉字和其他字符都不参与频数与有效长度。输入区显示的字符数是原始文本长度,结果区的“文本长度(字母)”才是过滤后真正进入公式的 N。至少保留 2 个字母时才会显示结果。
IC = Σ fᵢ(fᵢ − 1) ÷ [N(N − 1)]
其中 fᵢ 是第 i 个英文字母的出现次数,N 是 A–Z 的总数。分子统计相同字母的有序配对,分母统计从 N 个位置依次选出两个不同位置的全部配对,所以原始 IC 的范围是 0 到 1。
归一化 IC = 26 × IC
右侧第一张结果卡显示原始 IC,保留 5 位小数;第二张显示归一化 IC,保留 3 位小数。归一化值是为了相对 26 字母均匀分布更直观地比较,它不是概率,因此大于 1 并不异常。两张结果卡都可单独复制显示值。
| 分布模型 | 原始 IC | 归一化 IC | 含义 |
|---|---|---|---|
| 26 个字母等概率的长随机序列 | 约 1/26 = 0.03846 | 约 1.000 | 字母频率接近均匀 |
| 常见长英文样本 | 常以约 0.0667 作参考 | 约 1.734 | 英文常用字母的频率不均匀 |
这些数值描述的是模型或语料参考,不是“低于某值就一定加密”的硬阈值。文本长度、题材、专名、重复片段与加密方式都会改变观测值。单表替换只是把字母一一改名,通常保留频数结构,因而也保留 IC;多表替换可能把分布摊平,使整段密文更接近随机参考,但两者都只能作为分析线索。
指南
按步骤完成操作,并通过示例核对输入与结果。
直接输入、粘贴文本,或载入页面提供的英文示例。若分析密文,可保留原有空格和标点,因为它们会自动排除;若需要研究其他字母表,应先自行建立一致的 A–Z 转写规则。
查看结果区的“文本长度(字母)”。它与输入框字符数不同并不表示错误,而是说明非 A–Z 字符已被过滤。少于 2 个有效字母时,页面保持无结果状态。
原始 IC 用于和 0.03846、0.0667 等概率参考比较;归一化 IC 用于和 1.000、1.734 等比例参考比较。比较多个样本时必须始终使用同一口径,不要把原始值和归一化值放在同一列。
先比较样本长度,再看数值是否稳定。需要记录时,可复制对应结果卡;需要重新开始时,清空输入即可。
短串 ABBA:A 和 B 各出现 2 次,N=4,因此分子为 2×1 + 2×1 = 4,分母为 4×3 = 12。页面显示原始 IC 0.33333、归一化 IC 8.667。这个极高结果来自短文本和集中重复,并不代表它是英文。
页面示例:载入 The quick brown fox jumps over the lazy dog. This is a sample text for calculating the index of coincidence. 后,共保留 87 个字母,Σfᵢ(fᵢ−1)=340。计算得到 340÷(87×86)=0.04544,归一化后显示 1.182。它低于常见长英文参考,主要说明这一小段样本的字母分布与大语料平均值不同,不能据此把示例判成密文。
场景
查看这项工具在不同工作与生活流程中的用法。
密码学学习者可输入短串,手工列出每个字母的 fᵢ,再与页面结果对照,理解为何配对数使用 fᵢ(fᵢ−1) 而不是 fᵢ²。
分析者可分别计算同长度英文片段、单表替换结果和多表替换结果,观察频数结构是否被保留。数值用于筛选后续方向,结论还应结合频率图、重复片段和已知密码背景。
怀疑维吉尼亚类重复密钥时,可按候选周期把密文分列,再把每一列分别粘贴计算并求平均。若某个周期使各列更接近单表英文分布,它可以成为候选;本页面只计算当前输入的单个 IC,不会自动分列或给出密钥长度。
问答
集中解答高频疑问与容易混淆的问题。
不会。大小写会统一处理,空格、数字、标点和换行不会进入计算。因此 A-b A! 与 ABA 的有效字母序列相同,结果也相同。
因为计算口径只保留 A–Z。纯中文输入的有效字母数为 0,混合文本则只分析其中的英文字母。若要研究中文字符分布,需要采用以汉字或拼音为符号集的另一套明确口径。
不是。归一化结果等于原始 IC 乘以 26,它表达相对于均匀 26 字母模型的比例,不受概率上限 1 约束。例如 ABBA 的原始 IC 为 0.33333,归一化后就是 8.667。
IC 是样本统计量,短片段对个别字母和重复词格外敏感。不同段落的主题、专名和长度不同,频数自然会波动;扩大样本并比较长度相近的片段,通常更有解释力。
须知
使用前了解适用范围、结果限制与必要提醒。
IC 只能描述当前 A–Z 样本的字母集中程度,不能单独证明文本是否加密、使用了哪种密码、密钥有多长,也不能评价现代加密算法的安全性。低值可能来自均匀构造、短样本或多表替换;高值也可能只是大量重复。
把上方结果作为统计线索,再结合频率分析、重复序列、已知明文和密码背景进行判断。
推荐
查找相关工具、专题与可用的 API 能力。