密码破解与加密方法的演进
1. 早期对维吉尼亚密码的破解尝试
早期有人对维吉尼亚密码进行破解尝试,发现明文中存在算术级数,密钥中也有算术级数,且二者增量互为相反数。此人先错误猜测了17个字母的关键字,如“studens sic deficio”和“studium sic deficio”,后正确猜出“studium hic deficit”,从而得到明文。不过,他加密时出现了四个字母的错误,且其观察结果未能形成破解维吉尼亚系统的通用方法。虽然已具备了卡西斯基方法的关键要素,即密钥长度可能整除重复多字母组的位置差,但当时包括他在内的密码分析者都未重视这一见解,维吉尼亚密码在之后的250年里仍保持安全。
2. 弗里德曼重合指数法
2.1 重合指数的定义
威廉·弗里德曼在20世纪20年代开发了一种分析涉及多种替换的密码系统的方法。对于来自字母表 $A$(字母数量为 $s = #A$)的长度为 $n$ 的消息 $y \in A^n$,每个字母 $a \in A$ 在 $y$ 中出现 $t_a$ 次,满足 $\sum_{a\in A} t_a = n$。消息 $y$ 的重合指数 $c(y)$ 定义为 $y$ 中两个字母相等的概率,计算公式为:
[
c(y) = \frac{\sum_{a\in A} \frac{t_a(t_a - 1)}{2}}{\frac{n(n - 1)}{2}} = \frac{\sum_{a\in A} t_a(t_a - 1)}{n(n - 1)}
]
这意味着 $y$ 中重合的数量为 $\frac{n(n - 1) \cdot c(y)}{2}$。若将 $y$ 视为哈希函数,重合就相当于哈希冲突。
超级会员免费看
订阅专栏 解锁全文
1395

被折叠的 条评论
为什么被折叠?



