當前位置:
首頁 > 文史 > 二戰烽火後的暗戰,隱秘戰線上,恩尼格瑪密碼機和炸彈的較量

二戰烽火後的暗戰,隱秘戰線上,恩尼格瑪密碼機和炸彈的較量

第二次世界大戰中,正面戰場的烽火備受矚目,似乎後人的目光都放在了波瀾壯闊的戰爭中。然而在秘密戰線上,同盟國和軸心國圍繞著情報所展開的較量也一點不比正面戰場差。今天筆者就給大家講述,有關恩尼格瑪密碼機和「炸彈」的故事。

一.天書一樣的恩尼格瑪密碼機

密碼,這個詞大家一定很熟悉,我們在影視劇里常常聽到這個詞。在戰爭中,無線電報要不被人解讀,就得在無線電發報時,按照密碼本來發報。因為無線電的壞處是,你能接收,別人也可以。在第一次世界大戰和此後的一段時間裡,英國對於德國的無線電破譯一向是精準而高效。但到了1926年,英國收到的德國無線電報突然都成了一份份天書,根本無法破譯,這是怎麼回事呢?

原因就在於這個小盒子,就是圖裡的,這個東西叫做恩尼格瑪密碼機,名字有點繞口,它的原理一樣繞口。在它的內部有叫做轉子的零件,這個轉子才是關鍵。看到這個圖裡的恩尼格瑪密碼機沒有,很像是我們現在用的鍵盤吧?其實也就是這麼一回事。它的特點在於,你第一次按下A鍵,上面對應的燈泡亮起來的,卻可能是B燈,這就是轉子的作用。

同一個字母在明文的不同位置時,可以被不同的字母替換,而密文中不同位置的同一個字母,又可以代表明文中的不同字母,這種加密方式在密碼學上被稱為「複式替換密碼」。但是,這樣很容易被發現規律,所以德國又加了兩個轉子,當第一個轉子轉動整整一圈以後,它上面有一個齒輪撥動第二個轉子,使得它的方向轉動一個字母的位置。

假設第一個轉子已經整整轉了一圈,按A鍵時顯示器上D燈泡亮;當放開A鍵時第一個轉子上的齒輪也帶動第二個轉子同時轉動一格,於是第二次鍵入A時,加密的字母可能為E;再次放開鍵A時,就只有第一個轉子轉動了,於是第三次鍵入A時,與之相對應的字母就可能是F了。如此一來,重複的概率就達到26x26x26=17576個字母之後想要抓住規律,談何容易?

而在它的內部,還有反射器,這張恩尼格瑪密碼機的原理圖顯示了,恩尼格瑪密碼機的運作原理——按下A鍵後機器是如何將它顯示成D鍵的(燈D發亮),而按下D鍵的同時燈A也會發亮,但是按下A鍵是永遠不會使燈A發亮的,這是因為恩尼格瑪密碼機安裝有反射器。換句話說,在這種設計下,反射器雖然沒有像轉子那樣增加不重複的方向,但是它可以使解碼過程完全重現編碼過程。而這個過程就導致了,破解電碼的難度大大增加。

二.恩尼格瑪密碼機的弱點

然而天下沒有不會被破解的密碼,恩尼格瑪密碼機也一樣,波蘭人是第一個破解了它的人。很詫異吧,第一個破解它的竟然是波蘭人?這是怎麼回事呢?這還要歸功於一個叛變的德國情報人員,漢斯·提羅·施密特。他當時實在是窮的不行了,換句話,揭不開鍋了。於是這個德國通訊部門密碼處的負責人,在1931年11月8日,竟然拿著一份有關恩尼格瑪密碼機的情報去找了法國人。

這些關於恩尼格瑪密碼機的轉子和操作方式的資料,讓他賺了一萬馬克,在當時這可是巨款。不過法國人根本沒有重視,他們認為恩尼格瑪密碼機根本無法破解,所以沒有在意。但是這份情報,卻被轉贈給了波蘭人,波蘭人決定破解它。

當時波蘭人已經設法搞到了恩尼格瑪密碼機的複製品,說起來很搞笑。當時一個恩尼格瑪密碼機的商用版本送到了德國駐波蘭大使館,不過那一天是周六,大使館沒有人。波蘭人就趁機把這個密碼機拆了,然後挨個零件拍照,測繪,最後把它裝回去,裝作什麼也沒有發生。自己偷偷地複製了一個,但很可惜,這是民用的,不是軍用的。波蘭人還是犯愁。

不過這份情報來了,現在就可以按著這個,逆向推出軍用版本是怎麼樣的,波蘭人還真的仿造了一個軍用版出來。而當時負責破譯的是號稱「波蘭三傑」的三位數學家:馬里安·雷耶夫斯基、傑爾茲·羅佐基和亨里克·佐加爾斯基。這三個人可了不得,因為就是他們破解了恩尼格密碼機和其密碼體系。

他明白,重複乃是密碼的大敵。所以他注意接收每一份德國加密通訊,他發現每一份通訊,都有字母重複,這就是恩尼格瑪密碼機的弱點了。如圖所示,四封電報里,有四個字母是反覆使用的,這就讓他發現了規律,從而可以破解恩尼格瑪密碼。當然這只是個範例,因為這和轉子的數量有關,當年波蘭三傑面對的是三轉子的密碼機,和後來的恩尼格瑪密碼機升級版本有所區別,不過大意如此。

根據這個規律,他們摸索出了另一個規律:雖然這些循環圈是由當日密鑰,也就是轉子的位置,它們的初始方向以及連接板上字母置換造成的,但是每組循環圈的個數和每個循環圈的長度,卻僅僅是由轉子的位置和它們的初始方向決定的,和連接板上字母交換的情況無關也就是說,恩尼格密碼機實際上是26x26x26=17576然後17576x6=105456,所以實際上是105456個密鑰。波蘭三傑現在終於知道了,德國人的恩尼格瑪密碼機是怎麼一回事了。

三.「炸彈」的傳奇

如果按照原來的辦法,一個一個去測試,怕是要累死,因為會有上億個密鑰等著他們。但是恩尼格密碼機的數量巨大的密鑰主要是由連接板來提供的,如果只考慮轉子的位置和它們的初始方向,只有105456種可能性。雖然這還是一個很大的數字,但是把所有的可能性都試驗一遍,已經是一件可以做到的事情了。

1933年開始,波蘭三傑根據置換矩陣的方程式,開始不斷地破譯德國人的情報。德國人做夢都想不到,牢不可破的恩尼格瑪密碼機,竟然就這樣被破解了。這期間還發生了一個搞笑的事情,1934年,赫爾曼·戈林和一批德國高級官員來波蘭華沙的無名戰士墓獻花,很湊巧的是,這裡緊緊挨著波蘭密碼處,波蘭三傑正透過辦公室,看著戈林呢,而戈林呢?做夢也想不到,他距離波蘭密碼處只有咫尺之遙。

儘管這之後德國人對恩尼格機的轉子連線做了一點小小的改動,以至於破譯工作一度停頓。但是波蘭三傑早有對策,他們根據規律,製造了一個機器,這個機器可以自己自動驗證26x26x26=17576個轉子方向的機器,為了同時驗證三個轉子所有可能的位置排列,就需要六台同樣的機器,這樣就可以測試105456個排列。

按照這個思路,六個機器就排列成了一個巨大的機器,有一米高,能在兩個小時內就破解出當日的密鑰。波蘭三傑給它起了一個很狂野的名字,叫做炸彈,因為它是如此巨大,以至於運作起來發出的聲音震耳欲聾。這個名字也名副其實,因為炸彈確實轟開了德國人那幾乎牢不可破的密碼體系。

在1933年1月至1938年末,波蘭人破譯了德國十萬條情報,可以說對於波蘭起到了許多幫助。那段日子裡,波蘭的高級軍官們會收到標有「維奇爾」(Wicher,破譯恩尼格瑪密碼行動的代號)的情報,他們被告知這些情報絕對可靠,但來源絕密。然而很不幸的,在1938年末,德國在密碼機里新裝了兩個轉子,連線也變成了16根,現在炸彈失效了,因為密鑰的總數已經是原來的一萬五千倍了,這種幾何級的增長徹底讓波蘭三傑的工作打了水漂,而正是這時候,德國人發動了閃電戰,波蘭淪陷了。

結語

然而沒有人知道的,波蘭三傑已經帶著炸彈的圖紙,和他們的工作資料離開了。他們把資料交給了英國和法國的同行,這讓英法密碼專家目瞪口呆。當然法國情報人員沒能搞出什麼,因為法國也步了波蘭的後塵。但是在英國,一個叫做艾倫·麥席森·圖靈的人卻得到了這些資料,他將續寫炸彈的傳奇。

參考文獻:《密碼故事》

《二戰時期密碼決戰中的數學故事》

《不折之鷹》

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 千歷共嬋娟 的精彩文章:

沒有研發代號,皮薄餡大的瓦倫丁坦克,為何成了英國救命稻草?
諾曼底的背後,是人類史上最大規模的欺騙計劃,代號:保鏢行動

TAG:千歷共嬋娟 |