从不咯咯叫的鹅
13年来,英、法两国一直相信“奇谜”是无法破解的,现在却冒出希望了。波兰的启示证明“奇谜”密码有缺陷,提振了同盟国密码分析家的士气。新编码器和额外的接线板电线使得波兰人的进展搁浅,可是“奇谜”不是完美密码的事实并没有改变。
波兰的突破也向同盟国证实了聘任数学家做密码分析工作的价值。在英国,40号房一向是语言学家和人文学者的天下。现在他们也开始致力邀请数学家和科学家加入行列,平衡他们的阵容。这些新成员大多是以校友相互引荐的方式,由40号房的固有成员接触他们的母校牛津或剑桥大学招募而来的。他们也透过剑桥纽汉学院(Newnham College, Cambridge)、剑桥戈登学院(Girton College, Cambridge)等女校的校友圈子,招募女大学生。
这些新成员没有被带去伦敦的40号房,而是前往位于白金汉郡布莱切利园(Bletchley Park)的政府代码及密码学校(Government Code and Cypher School,简称GC&CS),这是新成立的密码解译机构,将取代40号房。布莱切利园可以容纳远多于40号房的工作人员。这一点很重要,因为他们预期,战争一旦爆发,势必会有大量截获的加密信息涌入。在第一次世界大战期间,德国的通讯量是每月两百万单词。如今无线电更加普遍,第二次世界大战的通讯量恐怕会是每天两百万单词。
布莱切利园中央是一栋很大的维多利亚时期的都铎-哥特式宅邸,它是由19世纪时的财务大臣赫伯特·雷恩爵士(Sir Herbert Leon)所建。这栋宅邸有图书馆、餐厅、华丽的宴会厅,成为整个布莱切利作业的管理中心。GC&CS的主管亚雷斯特·丹尼斯顿(Alastair Denniston)指挥官的办公室在一楼,可以俯视花园,只是这个美景很快就被许多矗立的小屋给破坏了。这些临时搭建的木屋是各种密码破解活动的所在地。例如,6号屋专门负责破解德国陆军的“奇谜”通讯。6号屋把破解结果交给3号屋的情报人员,让他们翻译这些信息,尝试善用这些信息。8号屋则负责海军的“奇谜”,解译结果则交给负责翻译及情报搜集的4号屋。一开始,布莱切利园只有两百名成员,五年内即增添为7,000位。
图44:1939年8月,英国的资深密码解译家拜访布莱切利园,评估它适不适宜作为政府代码及密码学校的所在地。为避免当地居民起疑,他们宣称为瑞德里上尉的射击俱乐部成员。
在1938年秋天,布莱切利的科学家与数学家研习“奇谜”密码的复杂性,很快就熟练掌握了波兰人传授的技巧。布莱切利有较多员工和资源,而能够应付编码器设定增加后,“奇谜”的破解难度升高十倍的问题。英国的解码专家每天都重复同样的工作。在凌晨时分,德国的“奇谜”操作员会换用一把新的当日钥匙,就在这个时刻,不管布莱切利在前一天有什么突破,都无法用来解译信息了。这些解码专家必须再度开始寻找新的当日钥匙的工作。这可能要花数个钟头的时间,不过一旦找出当天的“奇谜”设定,布莱切利人员就可开始解译堆了一叠的德国信息,揭露无价的战情信息。
突袭是一项无价的作战武器。然而只要布莱切利能破解“奇谜”,德国的计划就会透明化,英国就能读取德国总司令部的心思。英国若截获消息,知悉一项迫在眉睫的攻击计划,就可预先增强武力或采取闪躲的行动。如果他们能解译德国讨论自身弱点的信息,同盟国就能集中他们的攻击重点。布莱切利的解译工作重要至极。例如,德国在1940年进攻丹麦和挪威时,布莱切利园提供了一份详细的德军作战图。同样地,在不列颠战役(Battle of Britain)期间,这些密码分析家能事先提供空袭警告,包括空袭的时间和地点。他们也能不断更新德国空军现状的信息,例如损失多少架飞机,以多快的时间递补等。布莱切利园把所有这些信息送到MI6总部,再从那儿转交国防部、航空部和海军部。
在影响战争的发展之际,这些密码分析家偶尔也会找出时间轻松一下。在秘密情报局服务的马尔科姆·马格利奇(Malcolm Muggeridge)曾拜访过布莱切利园,他说,击球(rounders)是最受欢迎的游戏:
每天午餐过后,天气适合的话,这些解码专家会在宅邸草地上玩击球。这些先生被看到在做跟他们重要的研究相较起来,大概会被视为不正经或无意义的活动时,就会装出几分严肃的样子。因此他们激烈地为游戏的某个问题争论,犹如在辩论自由意志或决定论之类的哲学问题,或者宇宙究竟是起源于一场大爆炸(big bang),还是上帝渐渐创造出来的问题。
图45:布莱切利园的密码解译家玩击球游戏,轻松一下。
熟练波兰人的技术后,布莱切利园的密码分析家开始自行发明一些寻找“奇谜”钥匙的捷径。例如,他们很高兴地发现,德国的“奇谜”操作员有时会选用相当明显的信息钥匙。根据规定,“奇谜”操作员应该为每一则信息挑选一把不一样的信息钥匙——三个随机选取的字母。然而在战火中,工作过度的操作员有时候会懒得耗费想象力挑选一把随机的钥匙,而干脆从“奇谜”键盘上选用三个排在一起的字母,例如QWE或BNM(如图46)。后来,这类可以预测的信息钥匙被称为cillies。另一种形态的cilly是重复使用同一把信息钥匙,也许是操作员女朋友名字的起首字母——说真的,cilly这个词可能就是来自其中一组起首字母,C.I.L.。这些密码分析家的惯例变成:用辛苦的方法破解“奇谜”以前,他们会先试试这些cillies,有时候他们所谓的预感还真的会中奖。
图46:“奇谜”键盘的布局。
Cillies不是“奇谜”机本身的弱点,而是使用方法的弱点。较高阶层的人为错误也会危及“奇谜”密码的安全性。那些负责编纂密码簿的人必须决定每天该使用哪些编码器,而且位置如何。为了确保敌人无法预期编码器的设定,他们不允许任何编码器连续两天留在同一个位置。这表示说,如果我们帮编码器贴上1号、2号、3号、4号和5号的标签,假使第一天的编码器的位置设定是1 3 4,第二天就有可能是2 1 5,但不可能是2 1 4,因为他们不允许4号编码器连续两天留在同一个位置。这项策略看起来好像很有道理,因为编码器的位置持续在变。可是实施这种规则反而会让密码分析家的日子更好过。密码簿编纂人员为了避免某个编码器留在同一个位置,而排除某些设定,等于是把编码器的可能性位置数目减半了。布莱切利园的密码分析家注意到这件事实,特别善加利用。他们一旦辨认出当天的编码器设定,第二天就能马上排除半数可能的编码器设定,于是工作量也跟着减半。
同样地,接线板的设定也有一条规则:不连接两个相邻的字母。这表示,S可能跟任何字母调换路线,却不会跟R和T调换。这条规则的理论是,相邻字母调换会太明显,应该刻意避免。可是,实施这类规则反而会使钥匙可能性的总数锐减。
寻找新的解码捷径是有必要的,因为“奇谜”机在大战期间继续演化。这些密码分析家不断被迫更新、重新设计、改善这些“炸弹”,构思全新的策略。他们的成功,部分归功于这个综合数学家、科学家、语言学家、人文学家、最高段的棋手与纵横字谜玩家的奇特组合。难以处理的问题会在小屋里传阅,直到碰上一位有适当的心智工具解决它的人,或碰上一位能先解决一部分才继续传出去的人。6号小屋的负责人高登·维契曼(Gordon Welchman)曾形容他的小组是“一群设法找出猎物踪迹的猎犬”。这里面有很多伟大的密码分析家和许多重大的突破,真要详细说明这些个别贡献,会变成好几大册的书。然而,若要挑出一位值得特别介绍的人物,那就是阿兰·图灵(Alan Turing),辨识出“奇谜”最大弱点的人。多亏图灵,英国才有办法在最困难的处境下,仍能破解“奇谜”密码。
阿兰·图灵的母亲于1911年秋天在南印度马德拉斯(Madras)附近的小镇查特拉普(Chatrapur)怀了他,他的父亲朱利叶斯·图灵(Julius Turing)是印度的公务员。朱利叶斯和妻子埃塞尔(Ethel)决定让他们的儿子在英国出生,于是回到伦敦,于1912年6月23日生下阿兰。他父亲随即回去印度,15个月后,他母亲也追随到印度去,阿兰就由奶妈和朋友照顾,直到他可以上寄宿学校。
1926年,14岁的图灵就读于多赛(Dorset)的雪伯尔尼中学(Sherborne School)。他第一学期的开学日刚好碰到大罢工(General Strike),但他不愿在第一天就缺席,便独自从南安普敦(Southampton)骑单车到雪伯尔尼去,全程100公里。当地报纸报道了他这项壮举。第一学年结朿时,他得到的评语是:害羞、举止笨拙的男孩,只在科学学科显露潜能。雪伯尔尼的宗旨是把男孩们锻炼成十项全能、足堪治理大英帝国重任的男人,图灵对这种野心却不感兴趣,过了一段不太愉快的中学生涯。
他在雪伯尔尼唯一真正的朋友是克里斯托弗·摩孔(Christopher Morcom),他跟图灵一样,也对科学很有兴趣。他们常一起讨论最新的科学新闻,一起做实验。这段友谊点燃图灵的求知欲,而且更重要的,也在他心灵勾起一份非常深刻的情感。为图灵作传的安德鲁·哈吉斯(Andrew Hodges)写道,“那是初恋……有一种沉迷的感觉、更强烈的意识,犹如迸放于黑白世界的耀眼色彩。”他们的友谊持续了四年,摩孔似乎并不知晓图灵对他的情感深度。在雪伯尔尼的最后一年,图灵永远失去了告诉摩孔这份感觉的机会。1930年2月13日,克里斯托弗·摩孔突然死于肺结核。
图47:图灵
失去他唯一真正爱过的人,几乎让图灵崩溃。他承受摩孔之死的方法是:专注于科学研究,努力实现他朋友的潜能。摩孔似乎比他更有天分,原已得到剑桥大学的奖学金。图灵认为,他有义务也在剑桥取得学籍,去进行他朋友势必也会想做的科学探索。他跟克里斯托弗的母亲要了一张相片,相片寄达后,他回信致谢:“他正在我的桌上,鼓励我勤奋研习。”
1931年,图灵得到剑桥国王学院的入学许可。他来到剑桥时,正逢学术界激烈辩论数学和逻辑的本质,包围在罗素(Bertrand Russel)、怀特海(Alfred North Whitehead)和维特根斯坦(Ludwig Wittgenstein)等所提出的一些重要学说里。当时的辩论重点是逻辑学家库尔特·哥德尔(Kurt Gödel)所提出的争议性概念不可判定性(undecidability)。大家一直相信,所有数学问题,至少在理论上,都有答案。哥德尔却证明,有些数学问题超乎逻辑证明的范围之外,既不能证明其为真,也不能证明其为伪,此即所谓的“无法判定的问题”。这等于宣告数学不再是数学家一贯相信的全能学科。这令许多数学家非常难受,为了拯救他们的学科,他们想找出方法来辨识一个问题是否为不可判定,好把这类问题摆到一边去。这项目标激发图灵写下他最富影响力的数学论文“论可计算的数字”(On Computable Numbers),发表于1937年。在《破解密码》(Breaking the Code)这出修·怀特摩尔(Hugh Whitemore)所创作、描述图灵一生的戏剧里,有一个人问图灵这篇论文的意义,他回答说:“它所谈的是对与错。总体说来,它是一篇探讨数学逻辑的论文,但也探讨了分辨对错的困难。人们认为——大部分的人认为——在数学领域里,我们总能知道什么是对的、什么是错的。不是这样的。再也不是这样了。”
在尝试辨认无法判定的问题时,图灵的论文描绘了一部假想的机器,一部能执行特定数学运算(即演算法)的机器。换句话说,这部机器能够遵循一系列固定的、预先设定的步骤运转,譬如说,能够计算两个数字的乘积。图灵假想,要相乘的数字透过一条纸带输入到机器里,就像透过打孔纸带输入一段旋律到自动钢琴里去一样,接着再透过另一条纸带输出乘法运算的答案。他假设有一系列这类的“图灵机”,分别执行一道道特定的任务,例如除法、平方或分解因子。接着,图灵跨出更大一步。
他假想可以改变一部机器的内部构造,让它能够执行所有想象得到的图灵机的所有功能。他所假想的改变方法是,分别插入特定的纸带,把这部唯一能弹性变化的机器转化成一部除法机,或乘法机,或任何其他运算法的机器。图灵把这部假想的装置称为“万能图灵机”,因为它能解决任何逻辑上可以解答的问题。然而不幸的是,我们并不必然能够在逻辑上判定某一问题是否是不可判定的。因此之故,即使是万能图灵机也无法辨认每一个不可判定的问题。
有些数学家在读过图灵的论文后,失望于哥德尔的怪物并未被降服。值得安慰的是,图灵给了他们现代可程序化计算机的蓝图。图灵知道巴贝奇的作品,而万能图灵机也可视为差分机二号。然而,图灵又更往前跨了一步,给电子计算法提供扎实的理论基础,赋予计算机迄今仍难以想象的潜力。当时尚值20世纪30年代,还没有能实现万能图灵机构想的技术。可是,图灵并不在意他的理论超乎当时的技术能力范围,他只想得到数学界的认同。事实上,数学界不仅赞赏这篇论文,还视之为该世纪最重要的突破。他当时年仅26岁。
这是图灵特别快乐、顺遂的时期。在20世纪30年代,他从卑微的男孩成为世界精英所在的国王学院的一分子。他过着典型的剑桥学生生活,为他的数学世界掺杂了更多琐碎的活动。1938年,他常常看白雪公主与七个小矮人的电影,邪恶巫婆把苹果浸入毒药那一幕,显然叫他印象特别深刻。后来,他的同事常听到他不断重复这段阴森的吟诵:“苹果入酿汁,浸透睡死药。”
图灵很珍惜他的剑桥生涯。除了在学术上有所成就外,他也发现自己处在一个宽容、支持他的环境。这所大学里,大体而言对同性恋相当包容,他可以自由地跟同好发展关系,而不必担心谁会发现、谁会说什么。他没有认真的长期伴侣,但似乎对生活很满意。1939年,图灵的学术生涯忽然中断。政府代码及密码学校邀他去布莱切利园。1939年9月4日,首相张伯伦(Neville Chamberlain)向德国宣战的第二天,图灵从剑桥方院的优渥环境搬到申利溪尾(Shenley Brook End)的皇冠客栈(Crown Inn)。
他每天都从申利溪尾骑5公里的自行车到布莱切利园。在这里,他把一部分的时间花在小屋里,做例行的密码破解工作,一部分的时间则在布莱切利园的思考室里。这个思考室原本是赫伯特·雷恩爵士储放苹果、梨、李子的储藏室。这些密码分析家喜欢在这里进行他们的脑力激荡,以对付新问题,或预先设想如何解决未来可能出现的问题。图灵的思虑焦点是:如果德国军队改变他们交换信息钥匙的系统怎么办?布莱切利园早期的成功是以瑞杰斯基的研究成果为基础,亦即利用“奇谜”操作员每则信息钥匙加密两次的结果(例如,信息钥匙若为YGB,操作员就会输入YGBYGB)。这种重复是为了避免在收信端发生错误,却使“奇谜”的安全出现裂痕。英国密码分析家猜测,再过不了多久德国就会注意到钥匙重加密会危及“奇谜”密码的安全,而下令操作员停止重复加密的动作,布莱切利园目前的解码技术也就会派不上用场。图灵的工作就是寻找另一种破解“奇谜”的方法,一种跟重复加密的信息钥匙没有关系的方法。
数个星期下来,布莱切利园收集了大量的解译信息。其中,图灵注意到,很多信息有固定的结构。研究过旧的解译信息后,他发现他有时候,单凭信息发送时间与来源,竟可预测一些尚未解译信息的部分内容。例如,经验告诉他,每天早上6点一过,德国就会送出一则加密的气象报告。所以,一则在6点5分拦截到的加密信息,几乎一定会含有wetter(天气)这个单词。任何军事组织都会实行一套严格的规范,这表示,这类信息也会合乎某种制定的格式,因此图灵甚至可以指出wetter大约在这则加密信息的哪个位置。例如,经验可能告诉他,某一段密码文的头六个字母相当于明文字母wetter。可以把一段明文跟一段密码文对应在一起时,两者并在一起的文字称为对照文(crib)。
图灵相信他可以利用这类对照文来破解“奇谜”。如果他有一段密码文,而他知道其中某一特定部分,譬如说ETJWPX,代表wetter,他的挑战就是找出会把wetter改写成ETJWPX的“奇谜”机设定。最直接但不实际的方法是,把wetter输入“奇谜”机里,看看会不会冒出正确的“密码文”。如果没有,就改变机器的设定,调换接线板的电线位置、调换或重新设定编码器的方位,然后再输入wetter看看。如果仍旧没有出现正确的密码文,就再度更改设定一次、再一次、又一次,直到出现正确的。这种尝试错误法的唯一问题是,共有159,000,000,000,000,000,000种设定得检验,要这样找出把wetter改写成ETJWPX的设定,是不可能的任务。
为了简化这个问题,图灵尝试依循瑞杰斯基分离这些设定的策略。他想把找出编码器设定(找出哪一个编码器在哪一个插槽,以及它们个别的方位)的问题跟找出接线板配线的问题分开来。例如,如果他可以在这组对照文里找到跟接线板的配线没有关系的特征,他就有办法检验完剩下的1,054,560种编码器组合了(60种位置安排成17,576种方位)。找到正确的编码器设定,他就能推测出接线板的设定了。
图48:图灵所找出的对照文,出现一个回路。
最后,他把心力放在一项特别的对照文特征上:内部回路(internal loop)。这种回路跟瑞杰斯基所利用的环链很像,可是跟信息钥匙没有关系。图灵这项研究的出发点,正是假设德国很快就会停止发送重复加密的信息钥匙。图灵所找出的回路连接了对照文内的明文字母和密码文字母。图48的对照文就有一个回路。
别忘了,对照文只是猜测的结果,对错还不知道。不过,我们若假设这组对照文是正确的,就可以把w—E, e—T, t—W连成回路。虽然我们不清楚“奇谜”机的设定,但我们可以把第一个设定,不管它是什么,称之为S。我们知道第一个设定把w编成E。编完码,第一个编码器就会转移一位,产生新的设定S+1,而把字母e编成T。编码器又再转移一位,改编了一个不在这个回路里面的字母。接下来,这个编码器再度转移一位,才改编下一个也在这个回路里的字母;这一次,S+3设定把字母t编成W。我们把这些过程摘要如下:
在S设定,“奇谜”把w编成E。
在S+1设定,“奇谜”把e编成T。
在S+3设定,“奇谜”把t编成W。
到目前为止,回路看起来不过是个有点古怪的模式,可是图灵却紧紧地追踪回路的内部关联的意义,发现它们正提供他破解“奇谜”所需要的快速捷径。图灵开始设想,不要只用一台“奇谜”来试验所有设定,而是同时运用三台机器来模拟回路的三个编码过程:第一台机器尝试把w编成E,第二台则尝试把e编成T,第三台则尝试把t编成W。这三台机器的设定几乎一模一样,只是第二台的编码器方位相对于第一台的设定往前转移一位,亦即S+1的设定,第三台的编码器方位则相对于第一台的设定往前转移三位,亦即S+3的设定。接着,想象一位快要抓狂的密码分析家,为了得出正确的编码结果,得不断更换接线板的电线,更换编码器位置的安排和它们的方位。第一台机器更换了什么电线,其他两台也得照着换。第一台机器的编码器位置做了什么变动,其他两台也得照着变。而且很重要地,第一台机器的编码器起始方位做了什么转变,第二台也必须跟着变,但得往前多移一位,第三台也是,但得往前多移三位。
图灵这个构想似乎没什么高明之处。这位密码分析家仍旧得检验159,000,000,000,000,000,000种设定,而且,还更糟——这项工作得同步在三台机器上进行。放心,图灵下一阶段的构想改变了这项挑战的性质,使它简单多了。他设想,如图49,用电线连接三台机器的输出与输入,形成一个电流回路,相当于那组对照文的回路。图灵假想,这些机器会,如前面所述,更动它们的接线板和编码器设定,但是,唯独所有机器的所有设定都正确的时候,这个电流回路才会接通,使电流流通所有机器。若在这个电路内加入一颗灯泡,正确的设定找到时,电流就会接通,点亮灯泡,发出成功的讯号。至此,这三台机器仍旧得检验高达159,000,000,000,000,000,000种设定,才能点亮这颗灯泡。不过,目前这一切都只是图灵做出最后一步逻辑跳跃的预备动作;他的最后一跃将使这项任务一下子简单了一百万亿倍。
图灵所设计的电路,排除了接线板的影响,让他可以忽略数万亿种接线板设定。图49显示,在第一台“奇谜”机里,电流进入编码器后,会从某个未知的字母冒出来,我们把这个字母称为L1。接着,电流穿过接线板,接线板就把L1转换成E。这个E透过电线跟第二台“奇谜”机的e连结,当电流通过第二块接线板后,它就又转换回L1了。换句话说,这两块接线板互相消解对方的作用。同样地,从第二台“奇谜”机编码器出来的电流会从L2流进接线板,然后把L2转换为T。这个T跟第三台“奇谜”机的t相连结,电流通过第三块接线板后,它又转换回L2了。简而言之,在整个电路中,这些接线板会相互消解作用,所以,图灵可以完全忽略它们。
图灵只需把第一套编码器的输出点——L1,直接连接到第二套编码器的输入点——也是L1,等等。可惜,他并不知道字母L1的值。所以,他必须把第一套编码器的所有26个输出点连接到第二套编码器所有相对应的26个输入点,等等。结果就会有26个电流回路,每一个回路都有一颗灯泡来指示电路是否接通了。这三套编码器就只需检查17,576种方位,其中第二套编码器的方位永远比第一套的多移一位,第三套编码器的方位则比第二套的多移两位。一旦找到正确的编码器方位,其中一组电路就会接通,电泡就会亮。如果编码器能够每秒换一次位置,五个小时就可以检验完所有可能性方位了。
图49:对照文的环路可以比拟成电流环路。这三台“奇谜”机的设定几乎一模一样,只是第二台的编码器方位往前移了一位(S+1设定),第三台的编码器方位则往前移了三位(S+3设定)。每一台“奇谜”的输出点都连接到下一台的输入点。这三套编码器就会同步一位一位地转动,直到电路接通,点亮灯泡,表示找到正确设定了。这个例图是假设机器的设定正确,而有接通的电路。
只剩两个问题要解决。第一,有可能这三台机器的编码器位置安排都不对。“奇谜”机在作业时,只用到五个编码器的其中三个,而且还必须注意位置顺序,亦即总共有60种安排可能性。因此,如果所有17,576种方位都检验完,灯泡都没有亮,就必须试试另一种编码器位置,再度一一检验17,576种方位,如此一直重复这个程序,直到有灯泡发亮。或者,设置60套三台机器的装置,让它们并行操作。
第二个问题则牵涉到接线板的配线。事实上,一旦找出正确的编码器位置顺序和方位,要找出接线板的正确配线并不难。在一台编码器位置顺序和方位都正确的“奇谜”机,输入一段密码文,再检视输出的明文。如果输出结果是tewwer,不是wetter,很明显地,接线板的w和t必须插接电线。再输入其他密码文片段,就可以揭露其他接线板电线的位置。
对照文、回路和电路链接的机器,这三者组合出一套惊人的密码分析法。也只有具备数学机器方面特殊学养的图灵,才会想出这种方法。他先前对假想的图灵机的冥想是为了解答关于数学不可判定的深奥问题,然而这项纯学术的研究把他放进正确的思考架构,得以设计出能解决现实问题的实用机器。
布莱切利园得到十万英镑的资金,可以把图灵的构想转化成工作设备。这些机器绰号叫“炸弹”,因为它们的机械构造跟瑞杰斯基的“炸弹”很像。图灵的每一台“炸弹”都有12套以电线相连的“奇谜”编码器,以便处理更长的字母回路。整台设备约两米高、两米长、一米宽。图灵在1940年初完成他的设计,建造的工作则由英国雷屈沃瑟(Letchworth)的图表机械工厂(Tabulating Machinery factory)接手。
这些“炸弹”送来前,图灵继续他在布莱切利园的日常工作。很快地,其他资深密码分析家都耳闻了他的突破,赞扬他是稀有的解码天才。也是布莱切利园解码专家的彼得·希尔顿(Peter Hilton)说:“阿兰显然是位天才,但他是一位可亲的、友善的天才。他总是愿意花时间、不厌其烦地解释他的构想。而且他并非只局限于某一领域的专家,他多元的思绪悠游于庞大领域的精密科学里。”
然而,政府代码及密码学校的任何人事物都是最高机密,因此布莱切利园以外的人都不知晓图灵非凡的成就。例如,图灵的父母完全不知道他在做破解密码的工作,更不可能知道他是英国最优秀的密码分析家。他曾告诉他母亲他在做某种形式的军事研究,但没有详述细节。她只是很失望,这项工作竟没使她邋遢的儿子理个像样一点儿的发型。布莱切利园虽由军方统筹管理,但他们同意让步,容忍这些“教授型”的邋遢和怪癖。图灵很少刮胡子,指甲沾满污垢,衣服总是皱成一团。至于军方是否也会容忍他的同性恋,我们就不得而知了。布莱切利园的老将杰克·古德(Jack Good)说:“幸好当局不知道图灵是同性恋。要不然,我们可能会打输这场大战。”
第一台“炸弹”原型,取名为“胜利”(Victory),在1940年3月14日抵达布莱切利园。他们马上让这台机器开工运转,可是,初步结果难以令人满意。这台机器的动作比预期的慢很多,花了一个星期才找到一把钥匙。他们同心协力提升这台“炸弹”的效率,数周后交出一份修改过的设计。建造一台升级的“炸弹”,得再花四个月的时间。在此同时,密码分析家得承受他们早已预期的噩运。1940年5月10日,德国改变他们的钥匙交换方式了,不再重复输入信息钥匙。英国成功解译出来的“奇谜”信息数目立即急速下跌。这段信息空白时期持续到8月4日,新的“炸弹”抵达。这台命名为“神之羔羊”(Agnus Dei)或简称为“艾格妮斯”(Agnes)的机器完全符合图灵的期望。
在18个月内,又多了15台“炸弹”加入探究对照文、检验编码器设定、揭露钥匙的工作,每一台都咯吱咯吱响,犹如百万只缝衣针在工作似的。顺利时,一个小时内就可找到“奇谜”钥匙。一旦找出某一则信息的接线板配线和编码器设定(信息钥匙),就能轻易地推测出当日钥匙,当天所拦截到的其他信息也就都能解译出来。
这些“炸弹”虽然是密码分析学的一项重大突破,解译成绩却很有限。叫这些“炸弹”开始寻找钥匙之前,必须先克服很多障碍。例如,得先有一组对照文,才能操作“炸弹”。资深的解码专家会提供对照文给“炸弹”操作员,可是解码专家不一定能猜对密码文的意义。而且即使他们的对照文明文部分是正确的,却可能被放在错误的位置。密码分析家或能猜出某段加密信息含有某个特定的词组,却可能把这个词组跟不对应的密码文片段配在一起。不过,有一个巧妙的诀窍能检视对照文是否配对位置。
在下面这组对照文的例子,密码分析家相信他所猜测的明文是正确的,但不确定是否有跟正确的密码文字母配在一起。
“奇谜”机的特色之一是,由于反射器作用的缘故,它不可能把明文字母编码加密成同一个字母。字母a永远不可能编成A,字母b永远不可能编成B,以此类推。所以,上面那组对照文的位置一定是配错了,因为wetter的第一个e跟密码文的E配在一起。要找出正确的配对位置,我们只需挪移一下明文或密码文,直到每个字母都跟相异字母配对。例如,我们把明文往左挪移一位,这个位置仍旧不正确,因为sechs的第一个s跟密码文的S配在一起。相反地,若把明文往右移一位,就没有不允许的配对。于是这组对照文就有可能配对了位置,可以用做“炸弹”解码的基础了。
布莱切利园所搜集的情报只送交最资深的军方人物以及国防部的特定成员。丘吉尔首相非常清楚布莱切利园解译成果的重要性。1941年9月6日,他去拜访这些解码专家。见到其中一些密码分析家时,他很惊讶这么怪异的人物组合,竟是他宝贵信息的来源。除了数学家和语言学家外,还有瓷器权威、布拉格博物馆的研究主任、英国国际象棋冠军和无数的桥牌好手。丘吉尔对秘密情报局(Secret Intelligence Service)主管斯图尔特·门吉斯爵士(Sir Stewart Menzies)低声说道:“我叫你不要漏翻任何石头,可没想到你竟真的完全照做了。”说是这么说,他却很喜欢这个杂乱的班底,称他们为“会下金蛋,但从不咯咯叫的鹅”。
这趟访视有意显示最高当局非常欣赏这些解码专家的工作,以鼓舞他们的士气。后来危机迫近时,图灵和他的同事也因此胆敢直接与丘吉尔联络。为了使这些“炸弹”发挥极致的功效,图灵需要更多人手,可是接任布莱切利园的指挥官爱德华·特拉维斯(Edward Travis)觉得他没有适当的理由招募更多人员,遂拒绝了他的请求。1941年10月21日,这些密码分析家越级报告,跳过特拉维斯,直接写信给丘吉尔:
图50:运作中的布莱切利园“炸弹”。
亲爱的首相,
几个星期前,您屈尊降贵前来探视我们。我们相信您真的非常看重我们的工作。您想必已看到,多亏特拉维斯指挥官的才能与远虑,我们得以有足够的“炸弹”来破解德国的“奇谜”密码。然而,我们认为必须让您知道,这份工作正受到阻碍,而且在某些方面根本停摆了,主要原因是我们的人手不足。直接写信给您的原因是,数个月来我们已经尽我们所能透过正常渠道反映此事,却得放弃任何及时改善的希望,除非您能介入……
您的忠仆,
图灵(A.M.Turing)
维契曼(W.G.Welchman)
亚历山德(G.H.O'D.Alexander)
米尔纳—巴里(P.S.Milner-Barry)
图51:《每日电讯报》(Daily Telegraph)的纵横字谜,用作招募新密码破解员的测试(答案在附录H)。
丘吉尔毫不迟疑地响应他们的请求。他马上写了一张备忘录给他的参谋首长:
即日行动
务必以最高优先级,立即满足所有他们的需求。办妥后,向我回报。
从此再也没有招募成员或添购物资的障碍。到1942年底,他们共有49台“炸弹”,并且在布莱切利园北方的盖核斯庄园(Gayhurst Manor)新设立了一处“炸弹”工作站。为了招募人手,政府代码及密码学校在《每日电讯报》刊登了一封信。他们向读者发出一项匿名挑战:谁能在12分钟内解决报纸上的纵横字谜(如图51)?他们觉得纵横字谜专家也可能是优秀的解码高手,可以跟布莱切利园已有的科学心智互补——当然,报纸并没有提到这些。25位回复的读者被邀请到舰队街(Fleet Street)参加一项纵横字谜测验。有五位在指定的时间内完成纵横字谜,另有一位,12分钟过了后,只缺一个单词。数个星期后,军方情报单位对这六位进行面试,并招募为布莱切利园的解码员。