烽火後的暗戰,密碼學家之戰的頂尖交鋒,打破德國最驕傲的機器

雪风号
20 位粉絲
23 觀看·2025年11月20日
當二戰打得如火如荼之際,在隱祕的深處卻有這麼一小部分人,他們為盟軍獲得二戰勝利奠定了不世之功,然而他們的名字卻消失在歷史的洪流之中,而這就是隱藏在黑暗之中的密碼戰,這不同於諜戰,而是盟軍與德國之間的頭腦風暴,但要說這一切的根源,就不得不提這麼一個機器——恩尼格瑪密碼機。
自從無線電和摩斯密碼問世後,軍事通訊也進入到了一個嶄新的時代,但是我們要知道的是,無線電雖然是很強大的通訊工具,不過它卻是一個完全開放的平臺,這也就是說,你能通過無線電交流,那麼我就能一覽無餘地看到交流的內容,所以無線電並非是軍事上最合適的工具。
但當許多人發現,以往古代使用的密碼,再加上無線電,就能組成一個更為安全的無線電密碼,這就直接規避了無線電開放的問題。
不過說到這裡,我們也能看出一個問題,如果單純的使用普通的加密無線電,那麼很容易被破解,這就像我們的遊戲賬號一樣,註冊的時候還會說讓你設置的複雜一些,但是如果弄得過於複雜,記性不好的話,還容易忘。
所以在一戰時期,無線電密碼就陷入了這個閉環當中,由於受到手工編碼與解碼效率的限制,使得許多複雜的保密性強的加密方法無法在實際中應用,而簡單的加密方法又很容易被破譯,因此在軍事通訊領域,急需一種安全可靠而又簡單有效的方式,恩尼格瑪密碼機因此誕生。
1918年,德國發明家亞瑟·謝爾比烏斯和理查德·裏特創辦了一家新技術應用公司,謝爾比烏斯在創辦這家公司後,就希望利用自己所學的電器應用,採用現代化電器技術來取代以往的手工編碼加密,發明一種可以自動編碼的機器,而這就是恩格尼瑪密碼機。
它從外面上來看,就是一個放滿了複雜而精密的元件盒子,甚至我們把它和打字機放在一塊都能混淆。
而拆分後,這臺機器也非常簡單,只有三個部分,鍵盤、轉子和顯示器。而恩尼格瑪密碼機的操作並不容易,毫無疑問的是,德國軍隊中雖然普及恩格尼瑪密碼機,但由於德軍中的各支部隊使用一些不同的通訊線路,每條線路中的恩尼格瑪密碼機都有不同的設置。
為了使一條信息能夠正確地被加密及解密,發送信息與接收信息的恩尼格瑪密碼機的設置必須相同,轉子必須一模一樣,而且它們的排列順序、啟始位置和接線板的連線也必須相同。
所有這些設置都需要在使用之前確定下來,並且會被記錄在密碼本中,所以操作員在操作過程中必須要保證轉子的一致性。
而在使用過程中,我們以德國陸軍舉例,恩尼格瑪密碼機上面一共是26個字母,沒有任何的標點符號,而在初期的密碼本上,德國人會將某一個字母設置成標點來替代,X則是空格,77來表示逗號,FRAGE或FRAQ則表示問號。
當然,這僅僅是德國陸軍,其他軍種則會有其他的字母來代替,德國海軍用來表示逗號及問號的則分別為Y和UD。
德國陸軍和空軍將每條信息都翻譯成五個字母的代碼,使用四轉子恩尼格瑪密碼機的德國海軍則將信息翻譯成四字母代碼。
經常用到的詞語代碼與原詞語的差別越大越好,聽到這兒或許大家有種雲裡霧裡的感覺。
我們以Minestop的sorting來舉例的話,這樣的詞語可被表示為Minestop,Minbo,Mbo或者M354。
比較長的信息會被分成幾個部分來發送,說白了就是德國人用明文的方式下,利用恩尼格瑪密碼機的轉子來對部分電報內容進行字幅替換。
在這種繁瑣的加密形式下,一旦破譯者不瞭解恩尼格瑪密碼機,即使拿到了明文也跟看天書一樣不知所云。
不過再精密的儀器也有自身的漏洞,很快就有人破解了這臺機器。
恩尼格瑪密碼機是一款強大的機器,我們不可否認,恩尼格瑪密碼機的複式替換密碼確實給到了破解者很大的麻煩。
即使是三個轉子不同的方向,也會組成了26×26×26等於17576種可能性,
三個轉子間不同的相對位置為6種可能性,連接板上兩兩交換6對字母的可能性則是異常龐大,
有1003億9179萬1500種,那麼17576×6×1003億9179萬1500,
這就等於近乎一億億種可能性,除非隨時都能拿到德國的破譯本,否則這個工作量想要通過暴力破解是不可能的。
那麼恩尼格瑪密碼機到底是如何被破解的呢?
恩尼格瑪密碼機出現時,德國由於一戰後被凡爾賽條約制裁,歐美國家壓根兒就沒將德國人放在心上,
他們始終認為在高壓制裁之下德國人根本沒有反抗的機會。
所以當恩尼格瑪密碼機出現後,歐美即使在一瞬間同時失去了德國情報,他們也沒放在心上。
但波蘭人不行,他們很清楚,一戰之後的浴火重生是踩在德國舊日領土之上建立的,
所以他們迫切地需要知道德國人到底在想什麼。
在此情況下,波蘭設立了自己的破譯機構,國軍總參二局密碼處。
不得不說,波蘭人打仗不行,破譯密碼真的是一枝獨秀。
當年蘇聯瀕臨華沙,人家一天都能破譯四百多條密文,破譯速度之快讓人瞠目結舌。
但是當恩尼格瑪密碼機登場後,一切密碼破譯陷入遲滯,即使波蘭人想要暴力破解也沒辦法,波蘭人徹底飢了。
但與此同時,一位窮得已經揭不開鍋的德國通訊密碼處負責人向法國人出售了一份關於恩尼格瑪密碼機的情報,
讓波蘭人看到了希望。法國人認為恩尼格瑪密碼機無法被破解,將這份情報轉贈給了波蘭。
而波蘭這時才發現,他們之前努力的方向是錯誤的,但是要想徹底破解機器就必須擁有一臺恩尼格瑪密碼機。
不得不說,德國人大意了,德國駐波蘭大使館收到了來自國內送來的恩尼格瑪密碼機,
這讓波蘭人將這臺機器拆解仿製,但擁有機器僅僅是第一步,更何況這還是商用版本,與軍用相差甚多。
不過好在波蘭的不斷努力下,擬推出了軍用版,但它的字母規律和循環圈使波蘭人始終無法掌握關鍵。
直到波蘭三級的出現,這三位頂尖數學家——瑪利安·雷耶夫斯基、傑爾茲·羅佐基和亨利克·佐加爾斯基
憑藉著軍用版密碼機推理出了德軍的加密通訊,而究其原因還是因為重複問題,而這也是德國給波蘭留下的最大破綻。
恩尼格瑪密碼機有一個很大的問題,就是它有一個指示器步驟,也就是密碼機的大部分設置一般一天一更換,
但是每個轉子的起始位置實際上每發送一個信息就要更換一次,如果一天發送大量文件,利用頻率分析就可以得到恩尼格瑪密碼機的規律。
所以,為了避免這個事情的發生,轉子的起始位置在每次發送信息之前都會被改變,這個方法被稱作指示器步驟。
我們從這裡來看,指示器步驟確實是解決文件被破譯的一個方式,但德國人的使用習慣卻讓這種方式變為一種破綻。
當時德國操作員由於有指示器步驟的因素下,在發送每一條電文時都會重複打出三個字母,從而來按照密碼本來設置機器。
舉個例子來說,在調試機器時,現在的轉子位置為AOE,操作員會隨便打三個字母,例如是EN,再隨便打一遍EN。
如果這時被轉換的字母是AOERTE,這說明機器沒問題,開始正常輸入電文,而到了接收者這邊,有了密碼本,他們進行反推即可。
在輸入AOERTE後,會顯示出EN,ENN這六個字母,此時他們將轉子改為ENN,在輸入密電後,就能得到正確的原文。
這種重複性失誤很快被波蘭人掌握,並且根據規律進行破譯,也就是從這個時期開始,波蘭三傑徹底明白了恩尼格馬密碼機到底是怎麼回事。
這些循環圈是由當日密鑰,也就是轉子的位置,它們的出始方向以及連接板上字母置換造成的,
但是每組循環圈的個數和每個循環圈的長度卻僅僅是由轉子的位置和它們的出始方向決定的,和連接板上字母交換的情況無關。
基於這個理論,波蘭三傑在1933年開始使用置換矩陣方程式不斷地破解德國人的情報,
而德國人自始至終都沒想到自己萬分信任的密碼機早已經被波蘭人掌控了。
不過好在的是,德國人也不是傻子,在隨後的時間裡也許是感覺到不對勁,也可能是需要更迭密碼機,
他們將恩尼格馬密碼機的轉子連線進行了輕微改動,而波蘭三傑此時已經掌握了密碼機,
即使因此停滯了一段時間,但規律萬變不離其宗。
他們在之前的研究上,研發出了炸彈這臺機器,它是一臺可以自動驗證轉子方向的機器,僅僅兩個小時就能破解密鑰。
自1933年至1938年,憑藉著波蘭三傑就破譯了德國人十多萬條情報,不過一場變動卻讓事情迎來了新的轉機。
1938年,德國或許是準備發動戰爭,於是在此之前將恩尼格馬密碼機新裝了兩個轉子,以及將連接線增加至16根,
密鑰的總數提升到原來的15000倍,炸彈這臺機器徹底失去作用。
與此同時,德國閃擊波蘭,波蘭淪陷,更別提還有心思搞情報了。
但好在的是,在最終時刻,波蘭三傑拿著炸彈的設計圖和工作資料離開了波蘭,
在盟軍對德軍情報一籌莫展之際,將所有研究給到了英國和法國同行,
於是由軍情六處牽頭,開始在距離倫敦不遠處一個不起眼的莊園裡開始了破譯工作。
普萊切利莊園自此登上了歷史的舞臺。
本期的分享到了這裡就結束了,喜歡二戰的朋友可以點個關注,
下期和您分享更精彩的內容。
我是施密特,我們下期再見。
