图灵与英格玛
在1975 年之前,也就是迪菲与赫尔曼发明 DH 算法之前,人类 6000 年的历史中,密码学跟数学几乎没什么关系。 密码学中用到的那点子数学概念,都是平庸乏味的。迪菲与赫尔曼算是开启了密码学的新时代。
在那 6000 年的黑暗历史中,还有一个例外,就是图灵,他在破解密文时用上了复杂的统计学。
图灵是计算机之父,也是人工智能之父,还是密码学历史上最耀眼的大师。二战中盟军的胜利,图灵的贡献可谓卓越。而对整个人类的科技发展,他也做出了无可比拟、无可替代的贡献。然而,他的个人生活、他的命运,却是一个悲剧。用一句话流行的句式来说,英国欠他一个道歉,全世界人民欠他一句谢谢。
2013 年,英国女王向图灵颁发皇家赦免,英国司法部长宣布,图灵因同性恋遭致的判决是不公的。
我们的叙述,要将时间退回到半个多世纪以前。 1952 年 3 月 21 日,英国柴郡法院判决图灵因严重猥亵行为而有罪。法院给了图灵两个选择,要么入狱,要么接受化学阉割,图灵选择了后者。
图灵违反的法律是 1885 年刑法修正案第 II 条 “严重猥亵罪”,该法条严禁男性之间的身体接触,不论在公共场合还是私人场合。
文明的这列火车,行驶在平行的两根轨道上,一条是科学、技术,一条是伦理、法律、习俗。仅仅相隔半个世纪,1950 年的文明与今天的文明,差距最大的并不是科技,而是对人的尊重。难以想象,在英国,竟然存在过如此粗暴干涉个人自由的法律。
图灵与密码的关系,起因源自二战中德英之间的密码对抗。二战英德之战爆发后,围绕着一款叫英格玛机的加密机,英德之间展开了漫长而艰苦的竞赛。 英格玛机的故事,漫长而曲折,其中涉及国家及人物众多,命运各自跌宕起伏,精彩与复杂的程度完全不输于英格玛机技术上的精彩和复杂。
长话短说,德国人本就擅长机械,在二战期间他们所使用的恩格玛机,可以说是那个时代最登峰造极的密码系统了。恩格玛机本质上依然是一种替代加密法,将一个字母替换成另一个字母。只是德国人对机械与电子的天分,将其发展成了恐怖的复杂机器。恩格玛机使用三个转子、两个插线板、一个反射器,还有复杂的转换关系,实现了近乎无穷的加密可能性。一台恩格玛机器一共可以提供约 10,000,000,000,000,000,即一亿亿种可能的密钥!如果要暴力破解,一秒钟验算一种密钥,则需耗时三万年。
恩格玛机最初是德国发明家亚瑟·斯雪比尤斯于 1918 年发明。亚瑟·斯雪比尤斯也是一个企业家,只是不很成功。他发明恩格玛机,纯粹为了挣钱。 1918 年,他为恩格玛机申请了专利,认为这台机器将会有巨大的市场,军方需要它,商业企业也会需要它。然而很遗憾,商业企业根本没人愿意出钱买,军方对其热情也很小。要知道,按照现在的币值换算,一台恩格玛机要值 20000 英镑。直到 1925 年才有政府部门开始采购恩格玛机,随之这些部门认识到了恩格玛的威力。在之后的 20 年里,恩格玛机卖到德国政府和军方近 20000 台,在二战初期,这种机器让英国的解密者完全陷入了泥潭沼泽中。
1939 年图灵来到布莱切利庄园,这里聚集了一众数学家、密码学家及语言学家,为了破解恩格玛机密码体系。
图灵观察到恩格玛机体系的两个弱点:
其一是任何一个字母,在恩格玛机上不会加密成为其自身
其二是德国的一些密文电报中,有一些周期性固定不变的内容,比如每天的天气预报
基于这两个弱点,图灵设计了名为 “炸弹” 的密码破译机,实质上根据恩格玛体系的两个弱点,对所有可能的转子和插线板进行穷举试算。图灵设计的机器成功破解了德国的恩格玛机器。
后来英国人改进了恩格玛机,对其弱点进行了修正,让加密后的字母,也可以成为其自身。 英国人制造的机器叫 Typex,这可以称之为加强版的恩格玛机。德国人尝试破解 Typex,但无计可施,最终放弃。
恩格玛机器是对称加密时代的最高峰,这个时代持续了几千年,在这几千年中,一直是密码破解师占上风。可以说,没有任何密码体系,是牢不可破的,只要是对称加密,则都可以破解。