劉聲遠

1946年春,一個命令下達:摧毀布萊切利園密碼破譯部及其所有記錄。布萊切利園是第二次世界大戰期間盟軍最機密的行動部門。那么,為什么要摧毀其記錄呢?
本文上篇寫道:二戰期間,德國納粹利用極其復雜的恩尼格瑪機密碼發動閃電戰。經過波蘭和英國布萊切利園譯碼員共同努力,恩尼格瑪機被初步破解。
雖然英國數學天才圖靈很聰明,作出了準確推斷,但沒有密碼表的話,這種推斷也白搭。密碼表就在納粹軍艦上。接著,出現了驚人轉機。
納粹海軍上校倫普領導的潛艇,曾在二戰中擊沉第—艘船。1941年4月,他率領U-110潛艇執行了最后一次任務。英國皇家海軍軍艦“斗牛犬號”上的軍官巴姆當時剛滿20歲。該艦當時負責保護從英國利物浦前往美洲的商船隊。在冰島以南,“斗牛犬號”發現自己被納粹潛艇尾隨。突然間,兩艘商船接連被魚雷擊中,但“斗牛犬號”對納粹潛艇U-110實施了一次非常精準的攻擊。潛艇被迫浮上了水面。圖靈和布萊切利園一直在等待這個機會,因為U-110上面有德國海軍的密碼表。
當時位于潛艇下層的德軍發報員霍格爾不知道上面發生了什么,艇長在上面不停地喊:“快出來,快出來!”霍格爾問:“密碼表怎么辦?”對方回答:“什么都不要了,人出來就是!”霍格爾跳海逃命。就這樣,密碼表被留在了潛艇上。巴姆帶人上U-110搜查。因擔心德軍留人破壞潛艇,巴姆等人率先登艇,但他們壓根兒不知道艇上有什么密碼表,也從未聽說過布萊切利園。
在倫普上校的艇長艙桌面上,巴姆發現了一只密封信封。巴姆不懂德語,沒有貿然打開這只信封,但他感覺里面有重要的東西,于是把信封裝進了口袋。巴姆不知道的是,這只信封將改變針對納粹潛艇的情報戰。該信封里包含恩尼格瑪機密碼表、潛艇導航圖及各種命令執行手冊。倫普上校在這場戰斗中死亡。我們永遠不會知道:他當時為什么不下令破壞這艘潛艇,或者損毀密碼資料?
這些文件的效果幾乎是立竿見影。1941年6月23日,布萊切利園破譯了一份納粹潛艇密電:德軍將襲擊一艘英國商船。這艘船滿載物資正駛向英國,但該密電顯示10艘納粹潛艇將伏擊它。根據這一情報,英國海軍部重定商船路線,制訂了反擊策略。在為期5天的戰斗中,兩艘納粹潛艇被擊沉,商船安全抵達英國。至此,在大西洋戰役中,盟軍掌握了一種頗具威懾力的新武器——密碼破譯,但戰爭遠未結束。征服英國的企圖失敗后,希特勒在失望之下又夢想征服東方。1941年春季,破譯的納粹密電顯示德軍準備入侵蘇聯。隨后,布萊切利園又破譯了其他更驚人的信息。

德軍入侵蘇聯后,納粹黨衛軍和納粹警察發出密電,報告對蘇聯猶太人的大規模屠殺情況。雖然當時無人預料到納粹屠殺猶太人的巨大規模,但現己知道,納粹對蘇聯猶太人的殘殺拉開了二戰期間納粹對猶太人實施大屠殺的序幕。
英國首相丘吉爾看到被破譯的納粹密電及其他證據后,發表揭露納粹大屠殺、鼓舞國民斗志的講話,但此舉卻間接暗示納粹密電已被破譯。事實上,納粹警方頭目隨后就對發送有關大屠殺情況的密電進行新的限制。但對布萊切利園來說幸運的是,納粹總部從未失去對恩尼格瑪機的信心。不過,為避免泄密,布萊切利園的安保被強化,所有源自布萊切利園的情報都被定為最高機密。
到了1941年夏季,布萊切利園已經能在不到兩天時間里破譯一份納粹海軍密電,這一方面是因為被截獲的納粹海軍文件,另一方面也是由于他們學會了利用恩尼格瑪機的一個重要缺點:當發報員在恩尼格瑪機上輸入電文時,機器會把每一個字母替換成另一個字母,不會有任何字母被替換成與它相同的字母。這個簡單事實對于破譯密電來說很重要。隨著譯碼員研判更多被截獲的密電,還有一點變得很清楚:德國人在電文中持續重復一些固定短語。很快,譯碼員就可能根據電文中所包含一個特定短語來預測電文內容。布萊切利園把這種短語稱為“配點牌張”。
隨著納粹軍隊內部官僚作風日益嚴重,德國人經常會在每天相同時間發送同樣的信息。事實上,一些電文非常押韻,可以說是順口溜。譯碼員據此判斷,值夜班的德軍有時候會很無聊,因此有時候會兩三次發順口溜解悶。這些電文本身沒有什么意義,卻為布萊切利園破譯納粹密碼提供了線索。
當譯碼員懷疑電文中存在一個固定短語時,他們就會尋找這個短語。要想找到該短語的正確位置,取決于恩尼格瑪機的一個短板。譯碼員把“配點牌張”放在加密電文上滑動。因為他們知道恩尼格瑪機永遠不會原樣復制一個字母,所以一旦出現字母對相同的情況,就說明固定短語的位置不正確。一旦滑動到沒有任何字母相同的地方,就可能是這個短語的位置。如果成功,譯碼員就可能在接下來的24小時里破解恩尼格瑪機的設置。
逐漸地,譯碼員在這方面變得如此熟練,以至于他們能創建自己的“配點牌張”。他們會讓英國皇家空軍在某個特定海域投放炸彈,德軍會立即發密電給出英軍投彈海域的坐標。譯碼員知道這個坐標會出現在德軍密電中,他們就用這個坐標短語作為“配點牌張”,來尋找恩尼格瑪機的密鑰。到了這時,譯碼員已經不只是在弄懂恩尼格瑪機,而且是在了解戰爭通信的整個系統。新情報能否影響整個軍事戰略呢?這一測試在北非沙漠出現了。
納粹將領隆美爾因為對英軍之戰大勝而在納粹內部聲名大噪。他在非洲很幸運,一點傷都沒有受,只是有一塊英軍彈片擊中了他的皮帶,但沒進入他體內。整個1941年,沙漠之戰在利比亞境內展開,德國企圖占領北非。由于那里只有無線電通信,所以隆美爾的北非戰略需要依賴恩尼格瑪機。
隆美爾也堅信恩尼格瑪機無法被破解,但隆美爾的戰略有個主要弱點:他完全依賴意大利人提供物資。隆美爾的物資供給線自然淪為了英軍攻擊目標。因為布萊切利園能夠破譯納粹空軍和意大利軍隊的恩尼格瑪機密碼,所以英國空軍能襲擊穿越地中海、駛向北非的意大利供應船。
布萊切利園不僅能讀懂敵軍油船的方位,而且能知道船上有多少油。但為防止最高機密泄密,必須要看上去是英國人通過其他渠道得到了有關油船的情報。當時有一條嚴格規定:在派遣偵察機前往油船附近區域之前,不得使用最高機密。也就是說,要讓德暈懷疑是一個意大利內奸出賣了情報,而不是恩尼格瑪機密碼被破譯。事實上,隆美爾直到死都以為是意大利高層內部出了問題。
說到情報戰,盟軍也是有得有失。雖然納粹情報局從未破解過盟軍的加密機,但隆美爾的確從一名間諜那里得到了這方面的重要情報。這次事件發生在194t年初。當時,一組美國譯碼員訪問布萊切利園。那時候美國還沒有正式參戰,因此英美雙方的情報機構都對相互合作感到忐忑。盡管英國擔憂美國方面的保密疏漏,卻還是開始與美國分享恩尼格瑪機情報和有關戰事的外交情報。英國人的擔憂不是沒有道理,因為英美之間的這些交流很快就讓隆美爾在情報方面取得突破。
有關英國北非戰略的情報,通過美國在埃及的一名軍事參贊,定期傳到美國首都華盛頓。德國人截獲了這些密電,卻無法破解外交密碼。1941年9月,意大利特工潛入美國駐意大利羅馬的使館,盜走用于加密美國所有外交情報的密碼本。這些特工在復制了密碼本之后,又在無人知道的情況下把它放回原處。這樣一來,隆美爾就掌握了英國戰略,在利比亞對英軍發動猛烈進攻,逼迫英軍在17天里倒退了500千米。至此,英國需要自己的情報攻略來逆轉敗局。
在布萊切利園,譯碼員加緊破解恩尼格瑪機每天的轉子設置,一些情報在6~12小時里就被破解。但只有密碼破解進程再加速,才能挽救更多生命。天才譯碼員圖靈一直想建造一部機器,讓譯碼過程自動化。二戰之前,波蘭人曾經建造過這樣一個裝置。圖靈希望在此基礎上進行改進,讓譯碼機能算出德國發報員怎樣設置當天的恩尼格瑪機。
使用“配點牌張”推斷恩尼格瑪機轉子設置,是整個譯碼過程中最耗時的部分。圖靈的大突破,是在于看出了從“配點牌張”尋找轉子設置這項工作可以由機器來完成。這是一個偉大的起點,它引領我們進入了現代。圖靈設計的譯碼機比波蘭人的早期裝置強大了許多。布萊切利園稱這種譯碼機為“炸彈”,這可能是因為它在運作時的滴答聲太吵人。圖靈譯碼機運行一次平均需要15分鐘。它實際上是模擬恩尼格瑪機轉子的一系列機電鼓。這些鼓一個一個地點擊字母環上的字母,測試上萬種(每秒20種)可能的恩尼格瑪機設置,直到找到正確的設置。圖靈譯碼機大大加速了譯碼進程。到二戰結束時,英國已經部署了200臺圖靈譯碼機,這讓布萊切利園每個月破譯的納粹密電超過9萬份。
1942年8月,丘吉爾前往北非,決心逆轉盟軍命運。他的第一個舉動是給第8軍領導層注入新鮮血液。他指派蒙哥馬利挑戰隆美爾的非洲軍團。丘吉爾從最高機密——被破譯的納粹密電得知,隆美爾準備在埃及某地發動攻擊。攻擊地究竟是在哪里呢?蒙哥馬利預測是在阿拉姆哈勒法嶺。幾天后,布萊切利園破譯的電文顯示,隆美爾將于9月30日在阿拉姆哈勒法嶺發動進攻。
蒙哥馬利還有另一個優勢——情報。盟軍最終意識到,德國人正在解讀美國使館對英國戰略的報告,于是美國使館改變了外交密碼。隆美爾不再能了解敵方意圖,而蒙哥馬利繼續接收來自布萊切利園的情報。很快,德軍就承受了巨大壓力。布萊切利園一些譯碼員開始對蒙哥馬利感到不耐煩,他們覺得蒙哥馬利好像并不相信他們提供給他的那么珍貴的情報。
1942年10月23日,英國軍隊在埃及北部的阿拉曼村發起進攻。丘吉爾要求英軍摧毀北非的納粹軸心,消滅隆美爾及其殘余。那場戰斗期間,英國情報攔截站每天都截獲超過300份納粹密電。布萊切利園知道隆美爾的計劃、他的部隊和他的損失。軍隊在提前掌握敵人情況的條件下參戰,這在戰爭史上算得上奇跡。布萊切利園告知蒙哥馬利:隆美爾的部隊嚴重缺少燃油和坦克。11月2日晚,隆美爾向希特勒申請撤退。希特勒次日回復:不管勝敗,絕不退縮。蒙哥馬利在這份密電發出后幾小時內就讀到了它。在阿拉曼村之戰中,蒙哥馬利的軍隊重創了隆美爾的德軍,但他決定不追殺撤退的德軍。
盡管蒙哥馬利完全有能力將當地德軍斬草除根,他卻沒有這么干。納粹軍隊那么邪惡,他為什么要饒恕他們?這個疑問至今無解。布萊切利園3號房向蒙哥馬利提供情報,他置之不理。這些情報包括隆美爾部隊的悲哀狀況、可運作坦克數量等重要信息。那么,蒙哥馬利為什么會漠視這么重要的情報?這個問題也沒有答案。
阿拉曼村戰役發生之時,美國與德國交戰已近一年。甚至在珍珠港事件之前,英國海軍就一直在把破譯的納粹潛艇情報傳遞給美國海軍。丘吉爾和時任美國總統羅斯福都很清楚,大西洋戰場很重要,破譯的情報對于反制納粹潛艇來說是一大優勢。
1942年2月,英國海軍部接到一個災難性消息:納粹潛艇密碼突然改變,讓布萊切利園不再能解讀納粹潛艇的電報信號。同樣嚴重的是,納粹潛艇的戰術也突然改變。這些潛艇從大西洋北部轉向美國東海岸海域。在那里,納粹潛艇要么不發出無線電信號,要么發出的信號無法被解碼。在整個大西洋,盟軍難以應對日益增加的海上損失。隨著危機深化,布萊切利園的海軍恩尼格瑪機譯碼團隊通宵達旦工作,目的是破解納粹海軍新密碼。由于原有譯碼攻略全部失效,因此很明顯的是,鄧尼茨劇烈改變了恩尼格瑪機。對于大西洋兩側的盟軍來說,這都是一個嚴重打擊。
在這次打擊之前,英國海軍部的潛艇跟蹤室一直能借助鄧尼茨和其下屬之間電傳的導航位置,來確定納粹潛艇的方位。而現在,這種定位的精度低多了。到了1942年末,盟軍被擊沉艦船數量是這次密碼破譯失敗之前的4倍。布萊切利園最終還是想明白了鄧尼茨究竟對恩尼格瑪機干了什么。
雖然依舊相信盟軍不可能破解恩尼格瑪機,鄧尼茨卻擔心內部保密不嚴,并且下令給恩尼格瑪機添加第四個轉子。轉動的轉子,再加上它們經常被變換的迷宮式電線連接,正是恩尼格瑪機的核心秘密。引入第四個轉子,無疑極大地增加了潛在的設置數量。現在,譯碼員不得不建造一種新型機器來模擬四轉子恩尼格瑪機,并且由此來安撫越來越沒有耐心的美國人。事實上,到了1942年中期,美國宣布無論怎樣,他們都會自己行事,包括應對納粹潛艇的威脅和應對納粹密碼體系。至于美英雙方是否繼續合作,則成為一個敏感話題。
當英方向一位造訪布萊切利園的美國情報官員隱瞞機密之后,雙方合作的緊張態勢升級。該官員寫了一份怒氣沖沖的報告給美國有關方面。為化解危機,布萊切利園的第二掌門人前往華盛頓,與美國海軍官員會晤。雙方簽署協議,決定消除有關保密的擔憂,并且要在破譯納粹海軍恩尼格瑪機密碼方面全面合作。作為合作內容的一部分,美國譯碼員將被派到布萊切利園。美英雙方譯碼員將共同應對第四個轉子的挑戰。
再度破解納粹海軍恩尼格瑪機謎題的第一個機會,是在一套剛繳獲不久的納粹潛艇密碼表到達布萊切利園之時。這些密碼表,讓譯碼員們發現了四轉子系統的一個重要弱項。主要用于納粹潛艇上的四轉子恩尼格瑪機,不得不與使用三轉子恩尼格瑪機的其他海軍站通信。為解決這個問題,第四個轉子必須被設定在一個特殊位置,從而讓四轉子恩尼格瑪機模擬三轉子恩尼格瑪機。借助被繳獲的密碼表,譯碼員算出納粹海軍恩尼格瑪機的前三個轉子設置與以前是一樣的。接下來,只需對第四個轉子上的26個字母位置進行一一測試,就找到了正確設置。很快,恩尼格瑪機的每天設置就在被破譯后,被立即發給英國海軍部和美國方面。在被冷落了10個月之后,布萊切利園又恢復了生氣。
就這樣,布萊切利園再一次能夠幫助商船隊避開納粹“狼群”。空中雷達干¨經過改進的護航,幫助確保了盟軍在大西洋戰役中獲勝。到了1943年春,布萊切利園每天能破譯數十份納粹密電,美英合作也上升到新高度。_二戰后,美軍譯碼部變成了美國國家安全局。二戰時期的美軍譯碼部位于美國弗吉尼亞州北部,首批與布萊切利園譯碼員合作的美國譯碼員就是從這里被選拔的。
英國譯碼員告訴美國譯碼員,一個更大的譯碼難題是,除了恩尼格瑪機之外,德國人有時候還使用另一類完全不同的密碼機。英國早在1940年就開始截獲這種密電。當時,英格蘭南部海岸警察監聽德國間諜在英國境內的無線電通信。本不應該有這樣的通信,因為所有在英國的德國間諜都己被抓獲。盡管如此,這些警察還是仔細聆聽,結果聽到了這些奇怪信號。但英國人長時間來對這種密碼機一無所知。
現在,這種密碼機發出的密電信號被送到了布萊切利園。首先,譯碼員困惑的是這些奇怪信號的來源。希特勒要求給納粹總部配備速度比恩尼格瑪機快、保密性比恩尼格瑪機好的密碼機。為此,德國專家設計了一種基于電傳打字電報機的加密系統。電傳打字電報機的運作,是基于今天廣為人知、簡單明了和普遍使用的二進制代碼。德國人把電傳打字電報機與一臺機器連接,該機器能巧妙地利用電傳打字電報機的語言產生一種復雜密碼。這種納粹加密機被稱為洛倫茨。為了加密信息,洛倫茨使用的轉子數量是12個,而不是恩尼格瑪機的3個或4個轉子。另外,洛倫茨加密電文是一次對一連串字母加密,而不是對單個字母或字母對加密。因此,洛倫茨加密機發出的密電破譯難度極大。
洛倫茨依賴的數學體系叫作“模加法”。它能讓被添加到電文的一連串毫無意義的字母,在接收端通過一種類似的數學算法被移除。具體而言,發報員先在其電傳打字電報機上按下一個鍵,產生一個電信號。接著,洛倫茨給這個電信號添加一種模糊性,其結果被傳輸出去。在接收端,另一臺相同架構的洛倫茨再產生相同的模糊性,并把它添加給收到的加密電文,模加法讓這兩個模糊性相互抵消,從而給出清晰的電文。
簡言之,洛倫茨的保密性在于:洛倫茨通過添加一連串隨機字母,來隱藏真實信息。但因為洛倫茨依然是一種機器,所以它并不能產生完全隨機的一組字母。布萊切利園把洛倫茨密碼稱為“魚”。他們算出“魚”是基于電傳打字電報機的語言。怎樣剝離模糊密碼?起初只能靠猜測。在1941年8月30日這天,一個懶惰的德國發報員把洛倫茨的秘密暴露了。
當他來到洛倫茨面前,鍵入一份包含近4000個字母的電文后,接收端發回的信息是“沒收到,再發一遍”。接著,接收雙方就像白癡一樣,都把自己的洛倫茨設置回同樣的起始位置。然后,發報員開始再次鍵入長電文。當他這么做時,他變得不耐煩了,干脆省略掉了一部分電文內容。這樣造成的輕微改變,就讓譯碼員能剝離掉遮蓋真實信息的隨機字母串。