书城科普读物探索未知-恩尼格玛的兴衰
15662000000006

第6章 灭亡(2)

图灵找到了这样的特性。这是一种和雷杰夫斯基发现的循环字母圈类似的东西,只不过这回和重复的密钥没有关系,却是基于候选单词。假设图灵已经正确地猜到wetter被加密成了ETJWPX,这里就存在着一个字母循环圈:图灵并不清楚在密文中出现这个候选单词时的转子状态,但是假设他猜对了这个候选单词,把这个候选单词起始时转子的方向记为S,那么在此时ENIGMA把w加密成了E;然后转子转到下一个方向,就是S+1,ENIGMA把e加密成T;在方向S+2上一个不属于这个循环的字母被加密了,这个我们暂且不去管它;接下来在方向S+3,ENIGMA把t加密为W。

这看起来好像还是让人摸不着头脑,但是图灵想的办法很巧妙,因为在这个字母循环圈里有3个字母,所以他想像如果用三台ENIGMA同时加密这个候选单词,会发生些什么事。三台ENIGMA的初始设置除了转子方向外完全一样,第1台ENIGMA机的转子初始方向被定为原来的S,而第2台ENIGMA机的转子初始方向却是S+1,第3台的转子初始方向是S+3。当然一开始图灵根本就不知道这个S具体是什么(要是知道的话密码也就破译出来了),所以只能一个一个方向地试。大家可能会问,那为什么需要3台ENIGMA呢?只要在第一台上我们发现了一个把wetter加密成ETJWPX的转子方向,不就找到了密码吗?

这就要考虑连接板的问题。上面我们说过,如果只用一台ENIGMA来试所有的密码,我们要试的就不仅仅是所有的转子方向,而且还要考虑所有的连接板上的连线方向,那个数目是1590亿种。图灵的绝妙主意就是用3台ENIGMA把连接板上连线的效应抵消掉!这样他就只要考虑1054560种转子方向就可以了。

图灵把三台ENIGMA的显示器按下图的方式连接起来,也就是说把第一台ENIGMA显示器上的E和第2台ENIGMA显示器上的e连起来,又把第2台上的T和第3台上的t连起来,最后把第3台上的W和第1台上的w连起来(注意ENIGMA上字母没有大小写之分,这里我们只是用大小写来区别密文和明文)。下面的解释听起来稍微有一点复杂,最好对照着上面的图来读。假设连接板上有关的交换字母的连线是下面这样的(3台ENIGMA机上的都一样):E←→L1,T←→L2,W←→L3当然这里的L1、L2和L3都还是未知的。

现在假设字母w被输入第一台ENIGMA,它先通过连接板变成了L3,然后通过三个转子经过反射器,再通过三个转子返回连接板;因为我们根据候选单词知道w此时会被加密成E,所以没有经过接线板前它一定是和E对应的L1;L1经过接线板变成E后,直接成了第二台ENIGMA的输入。提醒一下,第二台ENIGMA的转子方向是S+1,所以根据候选单词知道e此时会被加密成T,我们来看看具体是怎么回事。从第一台ENIGMA来的e通过连接板变成了L1,再通过转子和反射器回来变成了连接板上和字母T对应的L2;通过连接板后变成了T,然后这个T又变成第三台ENIGMA机上的输入t。第三台ENIGMA机的转子方向是S+3,这个传送过来的t会被加密成E,具体的情况和上面第一第二台上的类似。我们发现现在三台ENIGMA机的线路组成了一个闭合回路,如果在里面加上一个灯泡,它就会亮起来。这个闭合回路事实上就是那个字母循环圈的形象化。

稍微思考一下就可以看到,无论连接板上的连线实际如何(也就是说无论L1、L2和L3实际上是什么),只要转子方向凑对了,这个闭合回路就会形成(当然如果有闭合回路形成不等于这个方向就一定是正确的,但是这样的情况很少,用手工就可以把正确的方向从中选出)。就这样,连接板上的连线效应被消除了。找到了转子的初始方向S,当然还要找到连接板上的连线,才能最终找到完整的密钥,但是这就相当简单了,这只是一个简单替换密码。如果在一台普通的ENIGMA上不接连线板,调整好找到的转子方向,键入密文ETJWPX,出来的明文成了tewwer,我们马上就知道w和t被交换了。键入密文的其他部分可以猜出其他字母的交换状况。

把候选单词,字母循环圈和用线路连接起来的多台ENIGMA机构成了密码分析的强大武器。而只有图灵,这个数学虚拟机器的发明人,才能有这样的想像力。图灵对ENIGMA的破译方法完全是纯数学和理论性的,他为此写了一篇著名的论文,但是他的理论研究已经完全可以让工程师来实际造出这样一台机器了。

布莱切利公园得到十万镑的经费来研制这种机器,绰号仍叫“炸弹”。每个“炸弹”里都有十二组转子(因为根据上面的分析,显示器,连接板实际上都没必要存在了。而上面的例子里只要三台ENIGMA的原因是字母循环圈的长度是3,十二组转子的目的就是要攻击更长的字母循环圈)。一台这样的“炸弹”高两米长两米宽一米。图灵的研究于1940年初完成,机器由英国塔布拉丁机械厂制造。

图灵的发明赢得了他在布莱切利公园的同事的尊敬,大家把他看作是超群的密码分析专家。他的一位同事彼得·希尔顿回忆道:“图灵毫无疑问是个天才,而且是个极近人情的天才。他总是愿意花费时间和精力来解释他的想法。这不是一个钻在狭窄领域里的专家,他的思想遍布科学的许多领域。”

当然图灵的工作在布莱切利公园之外是绝对机密,就连他的父母都不知道他在干破译密码的工作,因为他是全英国最厉害的密码分析专家。有一次去看他母亲时图灵提到过他正在为军事部门工作,但是没有透露其他风声。他母亲在意的是他儿子剃的头很难看。虽然领导布莱切利公园的是些军人,不过他们也知道在生活细节上不能对这些知识分子严格要求,在这方面都是睁眼闭眼。图灵就经常不刮脸,穿着皱皱巴巴的衣服,指甲又长又黑。但是军队没有过问图灵的同性恋,是因为他们不知情。布莱切利公园的退伍军人杰克·古德后来说:“幸亏布莱切利公园的负责人不知道图灵是个同性恋,否则的话,我们就会打败这场战争。”

1940年3月14日第一台“炸弹”运抵布莱切利公园。可是它运行得太慢,有时要一个星期才找得到一个密钥。工程师们花了很大的努力来改善“炸弹”的设计,然后开始制造新的“炸弹”,这又花了四个月时间。但是在5月10日,最令英国密码分析专家担心的事情发生了,德国人改变了密码传递规则,他们的密钥不再重复,这使得布莱切利公园破译的电文量急剧下降。幸运的是,改进以后的“炸弹”在8月8日到达,而且这次它运行得很好。在接下来的八个月里,十五台新“炸弹”在布莱切利公园里轰然作响。一般上一台“炸弹”可以在一小时里找到一个密钥。

但是并非有了“炸弹”就万事大吉了。在让它运行之前还有许多困难要克服。比如说使用“炸弹”前先要找到一个候选单词。但是密码分析人员不能保证他猜的词一定在电报的明文中;就算猜对了,要把候选单词所在的位置正确地找出来也不是一件容易的事情,很有可能他猜到了电文中的一整句话,但是把这句话的位置搞错了,那“炸弹”也就白白运行了。密码分析人员找到了一些技巧,比如说,他知道下面“wetterbullsechs”一定在电文明文中,但是具体位置却只知道个大概。于是他猜想密文和明文的对应是:候选单词:wetterbullsechs密文:IPRENLWKMJJSXCPLEJWQ在介绍ENIGMA的构造时我们知道,由于反射器的作用,一个字母从来也不会被加密成它本身。所以上面的候选单词所对应的位置一定是不对的,因为第二个字母e被对应到E上了。解决方法可以是慢慢地移动候选单词,看看是否每个字母都对应一个和自己不同的字母。比如把上面例子中的候选单词向左移动一位,变成候选单词:wetterbullsechs密文:IPRENLWKMJJSXCPLEJWQ现在就符合要求了,所以此时才可以让“炸弹”去试试它的威力。

英国领导高层当然非常注重密码分析工作,温斯顿·丘吉尔亲自访问了布莱切利公园,他把这帮具有稀奇古怪才能的密码分析专家称为“从不呱呱叫的下金蛋的鹅”。在图灵和他的同事的努力和丘吉尔的亲自过问下,布莱切利公园解决了经费和人员缺乏的困难。到1942年底,密码局拥有49台“炸弹”,密码分析人员的队伍也在不断扩大。事实证明玩填字游戏的高手往往会成为密码分析的高手,英国情报部门甚至在报纸上登出填字游戏来招聘新的密码分析人员。