當前位置:首頁 » 密碼管理 » 恩什麼密碼

恩什麼密碼

發布時間: 2024-05-10 15:10:29

㈠ 恩尼格瑪密碼機的發明歷史

美國大片《U-571》,告訴人們「恩尼格瑪」密碼機是戰爭中,同盟國費盡心機想要獲得的尖端秘密,是戰勝德國海軍潛艇的關鍵所在。歷史也確實如此,對於潛艇作戰,尤其是德國海軍的「狼群」戰術來說,無線電通訊是潛艇在海上活動,獲取信息通報情況的最重要的手段,而「恩尼格瑪」密碼機則是關乎整個無線電通訊安全的設備,其重要性可想而知。
自從無線電和摩爾斯電碼問世後,軍事通訊進入了一個嶄新的時代,但是無線電通訊完全是一個開放的系統,在己方接受電文的同時,對方也可「一覽無遺」,因此人類歷史上伴隨戰爭出現的密碼,也就立即與無線電結合,出現了無線電密碼。直到第一次世界大戰結束,所有無線電密碼都是使用手工編碼。毫無疑問,手工編碼效率極其低下,同時由於受到手工編碼與解碼效率的限制,使得許多復雜的保密性強的加密方法無法在實際中應用,而簡單的加密方法又很容易被破譯,因此在軍事通訊領域,急需一種安全可靠,而又簡便有效的方法。
1918年德國發明家亞瑟·謝爾比烏斯(Arthur Scherbius)和理查德·里特(Richard Ritter)創辦了一家新技術應用公司,曾經學習過電氣應用的謝爾比烏斯,想利用現代化的電氣技術,來取代手工編碼加密方法,發明一種能夠自動編碼的機器。謝爾比烏斯給自己所發明的電氣編碼機械取名「恩尼格瑪」(ENIGMA,意為啞謎),乍看是個放滿了復雜而精緻的元件的盒子,粗看和打字機有幾分相似。可以將其簡單分為三個部分:鍵盤、轉子和顯示器。
操作步驟
德軍的各支部隊使用一些不同的通訊線路,每條線路中的恩尼格瑪密碼機都有不同的設置。為了使一條信息能夠正確地被加密及解密,發送信息與接收信息的恩尼格瑪密碼機的設置必須相同;轉子必須一模一樣,而且它們的排列順序,起始位置和接線板的連線也必須相同。所有這些設置都需要在使用之前確定下來,並且會被記錄在密碼本中。
恩尼格瑪密碼機的設置包含了以下幾個方面:
轉子:轉子的結構及順序。起始位置:由操作員決定,發送每條消息時都不一樣。字母環:字母環與轉子線路的相對位置。接線板:接線板的連線。在末期版本中還包括了反射器的線路。恩尼格瑪密碼機被設計成即使在轉子的線路設置被敵人知道時仍然會很安全,盡管在實際使用中德軍盡了全力來防止線路設置被泄露出去。如果線路設置為未知,那麼最多需要嘗試10種情況才可能推算出恩尼格瑪密碼機的密碼;當線路和其它一些設置已知時,也最多需要嘗試10次。恩尼格瑪密碼機的使用者對它的保密性很有信心,因為敵人不可能使用窮舉法來找出密碼。
指示器
恩尼格瑪密碼機的大部分設置都會在一段時間(一般為一天)以後被更換。但是,轉子的起始位置卻是每發送一條信息就要更換的,因為如果一定數量的文件都按照相同的加密設置來加密的話,密碼學家就會從中得到一些信息,並且有可能利用頻率分析來破譯這個密碼。為了防止這種事情發生,轉子的起始位置在每次發送信息之前都會被改變。這個方法被稱作「指示器步驟」。
最早期的指示器步驟成為了波蘭密碼學家破譯恩尼格瑪密碼機密碼的突破口。在這個步驟中,操作員會先按照密碼本中的記錄來設置機器,我們假設這時的轉子位置為AOH,之後他會隨意打三個字母,假設為EIN,接著為了保險起見,他會將這三個字母重新打一遍。這六個字母會被轉換成其它六個字母,這里假設為XHTLOA。最後,操作員會將轉子重新設置為EIN,即他一開始打的三個字母,之後輸入密電原文。
在接收方將信息解密時,他會使用相反的步驟。首先,他也會將轉子按照密碼本中的記錄設置好,然後他就會打入密文中的頭六個字母,即XHTLOA,如果發送方操作正確的話,顯示板上就會顯示EINEIN。這時接收方就會將轉子設置為EIN,之後他就可將密電打入而得到原文了。
這個步驟的保密性差主要有兩個原因。首先,操作員將轉子的設置打到了密電中,這就使第三方能夠得知轉子設置。第二,這個步驟中出現了重復輸入,而這是一個嚴重的錯誤。這個弱點使波蘭密碼局早在1932年就破譯了二戰之前的德軍恩尼格瑪系統。但是從1940年開始,德國改變了這個步驟,它的安全性也就提高了。
這個步驟只被用於德國陸軍和空軍。德國海軍發送信息的步驟要復雜的多。在被恩尼格瑪密碼機發送之前,信息會先被Kurzsignalheft密碼本進行加密。這個密碼本將一個句子替換為了四個字母。它轉化的句子包括了補給、位置、港灣名稱、國家、武器、天氣、敵人位置、日期和時間等內容。
縮寫與指導
德國陸軍的恩尼格瑪密碼機的鍵盤上只有26個字母,標點符號由字母組合來代替,X相當於空格。在各軍種的恩尼格瑪密碼機中,X都相當於句號。有一些標點符號在不同軍種的密碼系統中被不同的字母組合代替。陸軍的系統使用ZZ來表示逗號,FRAGE或FRAQ則表示問號。但是德國海軍用來表示逗號及問號的則分別為Y和UD。Acht(意為「八」)和Richtung(意為「方向」)中的字母組合CH則由Q來代替。CENTA、MILLE和MYRIA分別表示兩個、三個和四個零。
德國陸軍和空軍將每條信息都翻譯成5個字母的代碼。使用四轉子恩尼格瑪密碼機的德國海軍則將信息翻譯成4字母代碼。經常用到的詞語代碼與原詞語的差別越大越好。Minensuchboot(意為「掃雷艇」)這樣的詞語可以被表示為MINENSUCHBOOT、MINBOOT、MMMBOOT 或MMM354。比較長的信息會被分成幾個部分來發送。

㈡ 二戰時希特勒的密碼加密原理

德國人二戰用的是恩尼格碼機。這種密碼加密加密機器的原理,簡單點說就是,26個字母,用其他一個字母代替這個字母,每個字母都是用別的字母代替,加密後的密碼,比如說LOVE L_A O_S V_D E_F 加密後就成了ASDF。原理是這樣,德國人在此基礎上設計出了,復雜的恩尼格碼機 http://ke..com/view/933211.htm

熱點內容
伺服器怎麼連接到電腦顯示屏上 發布:2024-05-21 02:38:21 瀏覽:285
織夢安裝資料庫連接失敗 發布:2024-05-21 02:37:45 瀏覽:258
python編程入門經典pdf 發布:2024-05-21 02:31:45 瀏覽:6
arm編譯添加驅動 發布:2024-05-21 02:02:28 瀏覽:476
安卓設置頁面是怎麼 發布:2024-05-21 01:32:51 瀏覽:521
學生成績管理系統資料庫設計 發布:2024-05-21 01:14:41 瀏覽:43
我的世界什麼指令直接出現伺服器 發布:2024-05-21 01:10:00 瀏覽:397
星等演算法 發布:2024-05-21 00:53:06 瀏覽:509
李興華的java視頻 發布:2024-05-21 00:49:55 瀏覽:605
資料庫4種索引類型 發布:2024-05-21 00:47:29 瀏覽:241