Enigma
Definition
- 定义
- 原理
- 破解
Enigma是一种著名的机械转子加密机,二战期间被德国军方广泛使用,其核心是通过电路、多个可旋转转子和接线板的复杂组合,实现多层次、多变化的替换加密。

明文字母通过键盘输入后,电流依次经过多组转子,每组转子都内含一个字母对应关系表,每按下一次键,最右侧的转子会自动旋转一格,使加密规律不断变化。
电流经过转子组后流向反射器,再折返回去,再次经过转子,最终点亮某个密文字母的指示灯,该字母即为加密输出。
转子顺序和初始设置、外加接线板(为部分字母对设置临时替换)一起构成密钥。收发双方只要设置一致,即可对密文解密还原明文。
转子旋转导致每个字母的加密输出随时间变化,突破了简单替换密码的弱点,极大提升密钥空间(可达上千亿种可能性),使频率分析变得极为困难。
但Enigma的密钥空间仍有限,且人类使用和操作习惯遗留弱点。盟军通过破解“设置本”等渠道,再结合工程师研发的“炸弹机”等自动化设备,用暴力破解和逻辑推理相结合,最终实现了对Enigma密文的攻破。
- 操作习惯漏洞:德军为了方便,每天用一本“设定本(setting book)”指定当天的密钥设置,导致同一天内大家用一套配置,从而产生了信息规律性。
- 重复密钥、格式规则:有时会重复发送某段内容或用相同格式,给了分析者“线索”。
- 自动化设备“炸弹机”:这是人工智能和机械自动化的早期雏形,能快速大量尝试各种密钥设置自动比对,极大提高破解速度和效率。
- 逻辑推理:不盲目全部尝试,而是发现密文和明文的某种规律或“弱点”,大幅缩小搜索范围。