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

第2章 诞生(2)

在此基础上谢尔比乌斯十分巧妙地在三个转子的一端加上了一个反射器,而把键盘和显示器中的相同字母用电线连在一起。反射器和转子一样,把某一个字母连在另一个字母上,但是它并不转动。乍一看这么一个固定的反射器好像没什么用处,它并不增加可以使用的编码数目,但是把它和解码联系起来就会看出这种设计的别具匠心了。见图:我们看见这里键盘和显示器中的相同字母由电线连在一起。事实上那是一个很巧妙的开关,不过我们并不需要知道它的具体情况。我们只需要知道,当一个键被按下时,信号不是直接从键盘传到显示器(要是这样就没有加密了),而是首先通过三个转子连成的一条线路,然后经过反射器再回到三个转子,通过另一条线路再到达显示器上,比如说上图中b键被按下时,亮的是D灯。我们看看如果这时按的不是b键而是d键,那么信号恰好按照上面b键被按下时的相反方向通行,最后到达B灯。换句话说,在这种设计下,反射器虽然没有象转子那样增加可能的不重复的方向,但是它可以使译码的过程和编码的过程完全一样。

想像一下要用ENIGMA发送一条消息。发信人首先要调节三个转子的方向,使它们处于17576个方向中的一个(事实上转子的初始方向就是密匙,这是收发双方必须预先约定好的),然后依次键入明文,并把闪亮的字母依次记下来,然后就可以把加密后的消息用比如电报的方式发送出去。当收信方收到电文后,使用一台相同的ENIGMA,按照原来的约定,把转子的方向调整到和发信方相同的初始方向上,然后依次键入收到的密文,并把闪亮的字母依次记下来,就得到了明文。于是加密和解密的过程就是完全一样的——这都是反射器起的作用。稍微考虑一下,我们很容易明白,反射器带来的一个副作用就是一个字母永远也不会被加密成它自己,因为反射器中一个字母总是被连接到另一个不同的字母。

于是转子的初始方向决定了整个密文的加密方式。如果通讯当中有敌人监听,他会收到完整的密文,但是由于不知道三个转子的初始方向,他就不得不一个个方向地试验来找到这个密匙。问题在于17576个初始方向这个数目并不是太大。如果试图破译密文的人把转子调整到某一方向,然后键入密文开始的一段,看看输出是否像是有意义的信息。如果不像,那就再试转子的下一个初始方向……如果试一个方向大约要一分钟,而他二十四小时日夜工作,那么在大约两星期里就可以找遍转子所有可能的初始方向。如果对手用许多台机器同时破译,那么所需要的时间就会大大缩短。这种保密程度是不太足够的。

当然谢尔比乌斯还可以再多加转子,但是我们看见每加一个转子初始方向的可能性只是乘以了26。尤其是,增加转子会增加ENIGMA的体积和成本。谢尔比乌斯希望他的加密机器是便于携带的(事实上它最终的尺寸是34厘米×28厘米×15厘米),而不是一个具有十几个转子的庞然大物。首先他把三个转子做得可以拆卸下来互相交换,这样一来初始方向的可能性变成了原来的六倍。假设三个转子的编号为1、2、3,那么它们可以被放成123-132-213-231-312-321六种不同位置,当然现在收发消息的双方除了要预先约定转子自身的初始方向,还要设定好这六种排列的最佳组合。

下一步谢尔比乌斯在键盘和第一转子之间增加了一个连接板。这块连接板允许使用者用一根连线把某个字母和另一个字母连接起来,这样这个字母的信号在进入转子之前就会转变为另一个字母的信号。这种连线最多可以有六根(后期的ENIGMA具有更多的连线),这样就可以使6对字母的信号互换,其他没有插上连线的字母保持不变。在上面ENIGMA的实物图里,我们看见这个连接板处于键盘的下方。当然连接板上的连线状况也是收发信息的双方需要预先约定的。

在上面示意图中,当b键被按下时,灯C亮。

于是转子自身的初始方向,转子之间的相互位置,以及连接板连线的状况就组成了所有可能的密匙,让我们来算一算一共到底有多少种。

三个转子不同的方向组成了26×26×26=17576种不同可能性;三个转子间不同的相对位置为6种可能性;连接板上两两交换6对字母的可能性数目非常巨大,有100391791500种;于是一共有17576×6×100391791500,大约为10000000000000000,即一亿亿种可能性。

只要约定好上面所说的密匙,收发双方利用ENIGMA就可以十分容易地进行加密和解密。但是如果不知道密匙,在这巨大的可能性面前,一一尝试来试图找出密匙是完全没有可能的。我们看见连接板对可能性的增加贡献最大,那么为什么谢尔比乌斯要那么麻烦地设计转子之类的东西呢?原因在于连接板本身其实就是一个简单替换密码系统,在整个加密过程中,连接是固定的,所以单使用它是十分容易用频率分析法来破译的。转子系统虽然提供的可能性不多,但是在加密过程中它们不停地转动,使整个系统变成了复式替换系统,频率分析法对它再也无能为力,与此同时,连接板却使得可能性数目大大增加,使得暴力破译法(即一个一个尝试所有可能性的方法)望而却步。

1918年谢尔比乌斯申请了ENIGMA的专利。他以为既然自己的发明能够提供优秀的加密手段,又能拥有极高的加密解密效率,一定能很快就畅销起来。他给商业界提供了一种基本型ENIGMA,又给外交人员提供一种豪华的装备有打印机的型号。但是他似乎搞错了。他的机器售价大约相当于现在的30000美元(如果订购一千台的话每台便宜4000美元)。这个价钱使得客户望而却步。虽然谢尔比乌斯向企业家们宣称,如果他们重要的商业秘密被竞争对手知道了的话,遭到的损失将比ENIGMA的价格高得多,但是企业家们还是觉得他们没有能力来购买ENIGMA。谢尔比乌斯的新发明并没有像他预料的那样带来多少回响。军队方面对他的发明也没有什么太多的注意。

谢尔比乌斯的失望是可想而知的。但是这方面他不是唯一的人。和他几乎同时在另外三个国家的三个发明家也都独立地想到了发明了使用转子的电气加密机的主意。1919年荷兰发明家亚历山大·科赫注册了相似的专利,可是却没有能够使它商业化,1927年他只好卖掉了他的专利。在瑞典,阿维德·达姆也获得了一个差不多的专利,但是直到1927年他去世时还是没有能找到市场。在美国,爱德华·赫本发明了他的“无线狮身人面”,对它充满希望。他用38万美元开了一个工厂,却只卖出价值1200美元的十来台机器。1926年在加利福尼亚州赫本被股东起诉,被判有罪。

可是谢尔比乌斯突然时来运转。英国政府发表了两份关于一次大战的文件使得德国军队开始对他的发明大感兴趣。其中一份是1923年出版的温斯顿·丘吉尔的著作《世界危机》,其中有一段提到了英国和俄国在军事方面的合作,指出俄国人曾经成功地破译了某些德军密码,而使用这些成果,英国的40局(英国政府负责破译密码的间谍机构)能够系统性地取得德军的加密情报。德国方面几乎是在10年之后才知道这一真相。第二份文件同样是在1923年由皇家海军发表的关于第一次世界大战的官方报告,其中讲述了在战时盟军方面截获(并且破译)德军通讯所带来的决定性的优势。这些文件构成了对德国情报部门的隐性指控,他们最终承认“由于无线电通讯被英方截获和破译,德国海军指挥部门就好像是把自己的牌明摊在桌子上和英国海军较量。”

为了避免再一次陷入这样的处境,德军对谢尔比乌斯的发明进行了可行性研究,最终得出结论:必须装备这种加密机器。从1925年开始,谢尔比乌斯的工厂开始系列化生产ENIGMA,次年德军开始使用这些机器。接着政府机关,比如说国营企业,铁路部门等也开始使用ENIGMA。这些新型号的机器和原来已经卖出的一些商用型号不同,所以商用型机器的使用者就不知道政府和军用型的机器具体是如何运作的。

在接下来的10年中,德国军队大约装备了30000台ENIGMA。谢尔比乌斯的发明使德国具有了最可靠的加密系统。在第二次世界大战开始时,德军通讯的保密性在当时世界上无与伦比。似乎可以这样说,ENIGMA在纳粹德国二战初期的胜利中起到的作用是决定性的,但是我们也会看到,它在后来希特勒的灭亡中扮演了重要的角色。

但是谢尔比乌斯没有能够看见所有这一切。有一次在套马时,他被摔到了一面墙上,于1929年5月13日死于内脏损伤。