俞大維早年先後留學美國和德國,精研數學、數理邏輯、彈道學和軍事學。在留德期間他擔任華夏國民政府軍政部參事,負責兩國間國防兵工業的聯係合作事宜,他自然對德國商用和軍用的eniga恩尼格瑪密碼機有所了解。
俞大維也深知密碼學和數學之間有著一脈相承的密切聯係。
他不解地道:“eniga密碼機的應用已有近20年之久,從商用型進一步改進發展而來的軍用型在德軍中作為標準的製式密碼機也已裝備使用了十年。”
“德國人非常自信地認為他們掌握了世界最先進、最安全、無法破譯的通訊加密係統。按照我們獲悉的資料,這個密碼機的原理從數學上看是無法破解的。”
“三個轉子一共有26x26x26=個不同的密碼表。這三個轉子設計成可以互相交換位置,共有6種不同的排列方式,密鑰空間增加到了x6=,大約十萬個。插線板將6對字母用連線兩兩互換,又將密碼數量增加了1000億倍,密鑰空間達到一億億個的水平,這是一個天文數字,暴力破解被認為是不可能的。”
宋鴻飛道:“從數學上看的確是這樣,不過破譯密碼並不等同於數學計算,機器設計上的缺陷以及使用上的一些固定習慣和漏洞都可以作為突破口,這就大有文章可做了。”
俞大維對於密碼學方麵的研究涉獵不多,他愈發按捺不住心中的震驚,幾乎要驚呼起來:“你是說竟然有幾處漏洞?這可真是石破天驚,叫人不敢相信!”
恩尼格瑪密碼機是利用機械轉輪及電路係統的組合來實現複雜加密和解密的裝置,恩格瑪機的高明之處就在於它在進行高強度的複式替換加密的同時,便攜性和操作簡易性也幾乎做到了極致,它被廣泛應用在德國軍事和外交的無線電通信中。
在曆史上德國人先後生產了各種型號的恩尼格瑪密碼機達10萬台之多,德國陸、海、空軍和情報機構如虎添翼。
恩尼格瑪密碼機的結構主要由擾碼轉子、反射器、插線板、鍵盤和指示燈組成。它的安全性在於“複式替換密碼”的特性,其核心在於三大靈魂部件——轉子、接線板、反射器。
發報者每次按下某個按鍵時,由於轉子會持續的跟著轉動,通過不同的連接線路,每次輸入的字母會就會隨機替換成另外一個字母,使得每次得到的加密字母都會不一樣。
如果隻有一個轉子,那就是一個固定不變的密碼表,加密方式就是簡單的單字母替換加密,這在密碼學上很容易被破解。
但多個轉子同時使用,就變成了很難破譯的“複式替換密碼”加密方式。這樣相同的明文字母可以有不同的替代加密字母,而相同的密文字母又可能代表不同的明文字母,這種設計即使對手對截獲的密文進行字頻分析也是無效的。
德軍恩尼格瑪機的操作員每個月都會收到一本密碼本,指定本月的每一天所使用的密鑰,這個“每日密鑰”每一天更換一次,它包含三個部分:三個轉子的排列順序、轉子字母的初始位置以及插線板的設置。
宋鴻飛道:“一個大國的情報機構,通過間諜活動完全可以搞到這幾樣:一是恩尼格瑪機的原理及內部構造,包括每個轉子的線路;二是德軍的對恩尼格瑪機的操作守則。”
俞大維點點頭,他知道對於一個國家的情報機構來說,搞來這些東西並不是不可能的。
宋鴻飛又道:“但要想破譯密文,就必須還要知道密碼機的每日初始設置——即每日密鑰。德國人希望當密碼機和密碼本泄露時對方依然無法破解,又采取了一些防範措施。”
使用恩尼格瑪機發送密電時,發送者設置好“每日密鑰”,然後他會隨意敲入3個字母,這3個字母就是發送密文的“信息密鑰”。為了防止誤操作,德軍規定將這3個字母重複打一遍,這3個字母就會被轉換成其它6個加密字母。
然後,發送者將轉子重新設置為這3個字母,再依次輸入明文得到密文,即每次發報都先用每日密鑰生成一個信息密鑰,再用這個信息密鑰加密明文,並將這6個字母的密鑰附加在密文前麵發送給接收方。
接收方將信息解密時,首先按照密碼本中的“每日密鑰”設置好,然後輸入密文中的頭6個字母。由於反射器的巧妙作用,明文輸入得到密文,密文輸入得到明文,這樣就得到這6個加密字母的明文,即發送者的3個字母的“信息密鑰”。
然後,接收方再將轉子設置為這個信息密鑰,再依次將密文輸入密碼機,就可以得到解密後明文了。
“這個步驟有兩處缺陷,”宋鴻飛緩緩地道,“首先,發送者需要將信息密鑰固定附加到密文開頭,這就使第三方能夠得知這6個字母就是密碼——即3個轉子的設置。第二,這6個字母出現了連續重複輸入,這在密碼學上是一個嚴重的錯誤。”
小主,這個章節後麵還有哦,請點擊下一頁繼續閱讀,後麵更精彩!