enigma的設(shè)計原理_第1頁
enigma的設(shè)計原理_第2頁
enigma的設(shè)計原理_第3頁
enigma的設(shè)計原理_第4頁
enigma的設(shè)計原理_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、Enigma密碼機原理介紹注:本文修改自三思科學(xué)ENIGMA的興亡ENIGMA看起來是一個裝滿了復(fù)雜而精致的元件的盒子。不過要是我們把它打開來,就可以看到它可以被分解成相當(dāng)簡單的幾 部分。下面的圖是它的最基本部分的示意圖,我們可以看見它的 三個部分:鍵盤、轉(zhuǎn)子和顯示器。在上面ENIGMA的照片上,我們看見水平面板的下面部分就是 鍵盤,一共有26個鍵,鍵盤排列接近我們現(xiàn)在使用的計算機鍵 盤。為了使消息盡量地短和更難以破譯,空格和標(biāo)點符號都被省 略。在示意圖中我們只畫了六個鍵。實物照片中,鍵盤上方就是 顯示器,它由標(biāo)示了同樣字母的26個小燈組成,當(dāng)鍵盤上的某 個鍵被按下時,和此字母被加密后的密文相

2、對應(yīng)的小燈就在顯示 器上亮起來。同樣地,在示意圖上我們只畫了六個小燈。在顯示 器的上方是三個轉(zhuǎn)子,它們的主要部分隱藏在血板之下,在示意 圖中我們暫時只畫了一個轉(zhuǎn)子。鍵盤 轉(zhuǎn)子和顯示器由電線相連 轉(zhuǎn)子本身也集成了 6條線路(在 實物中是26條),把鍵盤的信號對應(yīng)到顯示器不同的小燈上去。 在示意圖中我們可以看到,如果按下a鍵,那么燈B就會亮, 這意味著a被加密成了 B。同樣地我們看到,b被加密成了 A, c被加密成了 D,d被加密成了 F,e被加密成了 E,f被加密成 了 C。于是如果我們在鍵盤上依次鍵入cafe(咖啡),顯示器上 就會依次顯示DBCE。這是最簡單的加密方法之一,把每一個字 母都按

3、一一對應(yīng)的方法替換為另一個字母,這樣的加密方式叫做 “簡單替換密碼”。簡單替換密碼在歷史上很早就出現(xiàn)了。著名的“凱撒法”就是一種 簡單替換法,它把每個字母和它在字母表中后若干個位置中的那 個字母相對應(yīng)。比如說我們?nèi)『笕齻€位置,那么字母的一一對應(yīng) 就如下表所示:明碼字母表:abcdefghijklmnopqrstuvwxyz密碼字母表:DEFGHIJKLMNOPQRSTUVWXYZABC于是我們就可以從明文得到密文:(veni, vidi,vici, “我來,我見, 我征服”是儒勒凱撒征服本都王法那西斯后向羅馬元老院宣告的 名言)明文:veni, vidi, vici密文:YHAL, YLGL,

4、 YLFL很明顯,這種簡單的方法只有26種可能性,不足以實際應(yīng)用。一般上是規(guī)定一個比較隨意的一一對應(yīng),比如明碼字母表:abcdefghijklmnopqrstuvwxyz密碼字母表:JQKLZNDOWECPAHRBSMYITUGVXF甚至可以自己定義一個密碼字母圖形而不采用拉丁字母。但是用 這種方法所得到的密文還是相當(dāng)容易被破解的。至遲在公元九世 紀(jì),阿拉伯的密碼破譯專家就已經(jīng)嫻熟地掌握了用統(tǒng)計字母出現(xiàn) 頻率的方法來擊破簡單替換密碼。破解的原理很簡單:在每種拼 音文字語言中,每個字母出現(xiàn)的頻率并不相同,比如說在英語 中,e出現(xiàn)的次數(shù)就要大大高于其他字母。所以如果取得了足夠 多的密文,通過統(tǒng)計每

5、個字母出現(xiàn)的頻率,我們就可以猜出密碼 中的一個字母對應(yīng)于明碼中哪個字母(當(dāng)然還要通過揣摩上下文 等基本密碼破譯手段)??履系罓栐谒母柲λ固桨讣?中跳舞的人里詳細(xì)敘述了福爾摩斯使用頻率統(tǒng)計法破譯跳舞 人形密碼的過程。所以如果轉(zhuǎn)子的作用僅僅是把一個字母換成另一個字母,那就沒 有太大的意思了。但是大家可能已經(jīng)猜出來了,所謂的“轉(zhuǎn)子”, 它會轉(zhuǎn)動!這就是ENIGMA的最重要的設(shè)計當(dāng)鍵盤上一個 鍵被按下時,相應(yīng)的密文在顯示器上顯示,然后轉(zhuǎn)子的方向就自 動地轉(zhuǎn)動一個字母的位置(在示意圖中就是轉(zhuǎn)動1/6圈,而在實 際中轉(zhuǎn)動1/26圈)。下面的示意圖表示了連續(xù)鍵入3個b的情 況:A E D c F B

6、當(dāng)?shù)谝淮捂I入b時,信號通過轉(zhuǎn)子中的連線,燈A亮起來,放 開鍵后,轉(zhuǎn)子轉(zhuǎn)動一格,各字母所對應(yīng)的密碼就改變了;第二次 鍵入b時,它所對應(yīng)的字母就變成了同樣地,第三次鍵入b 時,燈E閃亮。照片左方是一個完整的轉(zhuǎn)子,右方是轉(zhuǎn)子的分解,我們可以看到 安裝在轉(zhuǎn)子中的電線。這里我們看到了 ENIGMA加密的關(guān)鍵:這不是一種簡單替換密 碼。同一個字母b在明文的不同位置時,可以被不同的字母替 換,而密文中不同位置的同一個字母,可以代表明文中的不同字 母,頻率分析法在這里就沒有用武之地了。這種加密方式被稱為 “復(fù)式替換密碼”。但是我們看到,如果連續(xù)鍵入6個字母(實物中26個字母), 轉(zhuǎn)子就會整整轉(zhuǎn)一圈,回到原始的

7、方向上,這時編碼就和最初重 復(fù)了。而在加密過程中,重復(fù)的現(xiàn)象是很危險的,這可以使試圖 破譯密碼的人看見規(guī)律性的東西。于是我們可以再加一個轉(zhuǎn)子。 當(dāng)?shù)谝粋€轉(zhuǎn)子轉(zhuǎn)動整整一圈以后,它上面有一個齒撥動第二個轉(zhuǎn)子,使得它的方向轉(zhuǎn)動一個字母的位置??聪旅娴氖疽鈭D(為了簡單起見,現(xiàn)在我們將它表示為平面形式):這里(a)圖中我們假設(shè)第一個轉(zhuǎn)子(左邊的那個)已經(jīng)整整轉(zhuǎn)了 一圈,按b鍵時顯示器上D燈亮;當(dāng)放開b鍵時第一個轉(zhuǎn)子上 的齒也帶動第二個轉(zhuǎn)子同時轉(zhuǎn)動一格,于是(b)圖中第二次鍵入b 時,加密的字母為F;而再次放開鍵b時,就只有第一個轉(zhuǎn)子轉(zhuǎn) 動了,于是(c)圖中第三次鍵入b時,與b相對應(yīng)的就是字母B。我們看到

8、用這樣的方法,要6*6=36 (實物中為26*26=676)個 字母后才會重復(fù)原來的編碼。而事實上ENIGMA里有三個轉(zhuǎn)子(二戰(zhàn)后期德國海軍用ENIGMA甚至有四個轉(zhuǎn)子),不重復(fù)的 方向個數(shù)達到26*26*26=17576個。不僅如此在三個轉(zhuǎn)子的一端還十分巧妙地加了一個反射器,把鍵 盤和顯示器中的相同字母用電線連在一起。反射器和轉(zhuǎn)子一樣, 把某一個字母連在另一個字母上,但是它并不轉(zhuǎn)動。乍一看這么 一個固定的反射器好象沒什么用處,它并不增加可以使用的編碼 數(shù)目,但是把它和解碼聯(lián)系起來就會看出這種設(shè)計的別具匠心 了。見下圖:顯示器 健盤三個轉(zhuǎn)子反射器我們看見這里鍵盤和顯示器中的相同字母由電線連在一

9、起。事實 上那是一個很巧妙的開關(guān),不過我們并不需要知道它的具體情 況。我們只需要知道,當(dāng)一個鍵被按下時,信號不是直接從鍵盤 傳到顯示器(要是這樣就沒有加密了),而是首先通過三個轉(zhuǎn)子 連成的一條線路,然后經(jīng)過反射器再回到三個轉(zhuǎn)子,通過另一條 線路再到達顯示器上,比如說上圖中b鍵被按下時,亮的是D 燈。我們看看如果這時按的不是b鍵而是d鍵,那么信號恰好按 照上面b鍵被按下時的相反方向通行,最后到達B燈。換句話 說,在這種設(shè)計下,反射器雖然沒有象轉(zhuǎn)子那樣增加可能的不重 復(fù)的方向,但是它可以使譯碼的過程和編碼的過程完全一樣。反射器想象一下要用ENIGMA發(fā)送一條消息。發(fā)信人首先要調(diào)節(jié)三個 轉(zhuǎn)子的方向,

10、使它們處于17576個方向中的一個(事實上轉(zhuǎn)子 的初始方向就是密匙,這是收發(fā)雙方必須預(yù)先約定好的),然后 依次鍵入明文,并把閃亮的字母依次記下來,然后就可以把加密 后的消息用比如電報的方式發(fā)送出去。當(dāng)收信方收到電文后,使 用一臺相同的ENIGMA,按照原來的約定,把轉(zhuǎn)子的方向調(diào)整 到和發(fā)信方相同的初始方向上,然后依次鍵入收到的密文,并把 閃亮的字母依次記下來,就得到了明文。于是加密和解密的過程 就是完全一樣的一一這都是反射器起的作用。稍微考慮一下,我 們很容易明白反射器帶來的一個副作用就是一個字母永遠(yuǎn)也不 會被加密成它自己,因為反射器中一個字母總是被連接到另一個 不同的字母。安裝在ENIGMA

11、中的反射器和三個轉(zhuǎn)子于是轉(zhuǎn)子的初始方向決定了整個密文的加密方式。如果通訊當(dāng)中 有敵人監(jiān)聽,他會收到完整的密文,但是由于不知道三個轉(zhuǎn)子的 初始方向,他就不得不一個個方向地試驗來找到這個密匙。問題 在于17576個初始方向這個數(shù)目并不是太大。如果試圖破譯密 文的人把轉(zhuǎn)子調(diào)整到某一方向,然后鍵入密文開始的一段,看看 輸出是否象是有意義的信息。如果不象,那就再試轉(zhuǎn)子的下一個 初始方向 如果試一個方向大約要一分鐘,而他二十四小時日 夜工作,那么在大約兩星期里就可以找遍轉(zhuǎn)子所有可能的初始方 向。如果對手用許多臺機器同時破譯,那么所需要的時間就會大 大縮短。這種保密程度是不太足夠的。當(dāng)然還可以再多加轉(zhuǎn)子,但

12、是我們看見每加一個轉(zhuǎn)子初始方向的 可能性只是乘以了 26。尤其是,增加轉(zhuǎn)子會增加ENIGMA的體 積和成本。然而這種加密機器必須是要便于攜帶的(事實上它最 終的尺寸是34cm*28cm*15cm),而不是一個具有十幾個轉(zhuǎn)子 的龐然大物。在Enigma的設(shè)計當(dāng)中,機器的三個轉(zhuǎn)子是可以拆 卸下來互相交換的,這樣一來初始方向的可能性變成了原來的六 倍。假設(shè)三個轉(zhuǎn)子的編號為1、2、3,那么它們可以被放成 123-132-213-231-312-321六種不同位置,當(dāng)然現(xiàn)在收發(fā)消息的 雙方除了要預(yù)先約定轉(zhuǎn)子自身的初始方向,還要約定好這六種排 列中的使用一種。其次,鍵盤和第一轉(zhuǎn)子之間還設(shè)計了一個連接板。這

13、塊連接板允 許使用者用一根連線把某個字母和另一個字母連接起來,這樣這 個字母的信號在進入轉(zhuǎn)子之前就會轉(zhuǎn)變?yōu)榱硪粋€字母的信號。這 種連線最多可以有六根(后期的ENIGMA具有更多的連線), 這樣就可以使6對字母的信號互換,其他沒有插上連線的字母保 持不變。在上面ENIGMA的實物圖里,我們看見這個連接板處 于鍵盤的下方。當(dāng)然連接板上的連線狀況也是收發(fā)信息的雙方需 要預(yù)先約定的。于是轉(zhuǎn)子自身的初始方向,轉(zhuǎn)子之間的相互位置,以及連接板連 線的狀況就組成了所有可能的密匙,讓我們來算一算一共到底有 多少種。三個轉(zhuǎn)子不同的方向組成了 26*26*26=17576種不同可能性;三個轉(zhuǎn)子間不同的相對位置為6種可能性;連接板上兩兩交換 26對字母的可能性數(shù)目非常巨大,有 100391791500 種;于是 一共有 17576*6*100391791500, 大約為 10000000000000000,即一億億種可能性。只要約定好上面所說的密匙,收發(fā)雙方利用ENIGMA就可以十 分容易地進行加密和解密。但是如果不知道密匙,在這巨大的可能性面前,一一嘗試來試圖找出密匙是完全沒有可能的。我們看

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論