恩尼格瑪密碼機

一臺德國軍用三轉子恩尼格瑪密碼機的接線板、鍵盤、顯示板和轉子。
恩尼格瑪密碼機（Enigma，又譯恩尼格密碼機、啞謎機、奇謎機或謎式密碼機）是一種用於加密與解密文件的密碼機。確切地說，恩尼格瑪是對二戰時期納粹德國使用的一系列相似的轉子機械加解密機器的統稱，它包括了許多不同的型號，為密碼學對稱加密算法的流加密。
20世紀20年代早期，恩尼格瑪密碼機開始應用於商業，一些國家的軍隊與政府也使用過該密碼機，密碼機的主要使用者包括第二次世界大戰時的納粹德國。
在恩尼格瑪密碼機的所有版本中，最著名的是德國使用的軍用版本。儘管此機器的安全性較高，但盟軍的密碼學家們還是成功地破譯了大量由這種機器加密的信息。1932年，波蘭密碼學家馬裡安·雷耶夫斯基、傑爾茲·羅佐基和亨裡克·佐加爾斯基根據恩尼格瑪機的原理破譯了它。早在1939年中期，波蘭政府就將此破譯方法告知了英國和法國，但直到1941年英國海軍捕獲德國U-110潛艇，從中得到密碼機和密碼本後才成功破解。對於恩尼格瑪的破解使得納粹海軍對英美商船補給船的大量攻擊失效。盟軍的情報部門將破譯出來的密碼稱為ULTRA，ULTRA極大地幫助了西歐的盟軍部隊。關於ULTRA到底對戰爭有多大貢獻尚存爭論，但普遍認為盟軍在西歐的勝利能夠提前兩年，完全是恩尼格瑪密碼機被成功破譯的緣故。
儘管恩尼格瑪密碼機在加密方面有不足之處，但是經其加密的文件依然很難破解。盟軍能夠破譯恩尼格瑪是因為德國軍隊犯了一些大的錯誤，如沒有像海軍一樣每月更新密碼、使用步驟錯誤、機器或密碼本被繳獲等等，但這在1944年後英國開發出原始電腦後，即使每月更新也無濟於事。

**描述**
這張恩尼格瑪密碼機的原理圖顯示了按下A鍵後機器是如何將它顯示成D鍵的（燈D發亮），而按下D鍵的同時燈A也會發亮。但是按下A鍵是永遠不會使燈A發亮的，這是因為恩尼格瑪密碼機安裝有反射器。
恩尼格瑪密碼機轉子的工作原理圖，連續按相同的按鍵會產生不同的結果。
注意：轉子上的灰色線條代表了其它可能的線路，這些線路與轉子以硬件的接連方式（金屬觸點）連接起來。
連續按兩次A鍵會得到不同的結果，第一次得到G，第二次得到C。這是因為最右邊的轉子在第一次按下A鍵後會旋轉一次（形成了不同的電路通路），這樣再次按下A鍵後，電流會流經上述不同的通路，點亮另一盞燈。
與其它轉子機械相同的是，恩尼格瑪密碼機也結合了機械系統與電子系統。機械系統包括了一個包含字母與數字的鍵盤、依次排列在一個軸上的一系列名為“轉子”的旋轉圓盤，還有一個在每次按鍵後就使一個或幾個轉子旋轉的裝置。各種恩尼格瑪密碼機上的機械系統各不相同，它們之間最大的共同點是，每次按鍵後最右邊的轉子都會旋轉，並且有時候會帶動與它相鄰的轉子旋轉。轉子的旋轉會造成每次按鍵後得到的加密字母都與上一次按同一個按鍵得到的結果不一樣。
機械系統這樣運行的原因，是要產生不同的電流通路，字母的加密由機器自動完成。當一個鍵被按下後，電流會流過通路，最終點亮其中一個燈，這個燈顯示的就是加密後的字母。舉例來說，如果想要發送一條以ANX開頭的信息，操作員會先按下A鍵，這時如果Z燈被點亮，那麼Z就是加密後的信息的第一個字母。操作員之後會按同樣的步驟繼續輸入信息。
為了解釋恩尼格瑪密碼機的工作原理，我們用左側的圖表進行說明。為了使讀者更容易理解，在此只顯示按鍵、顯示燈等元件各4個。實際上，恩尼格瑪密碼機擁有顯示燈、按鍵、插孔和線路各26個。電流首先從電池①流到雙向開關②，再流到接線板③。接線板的作用是將鍵盤②與固定接口④連接起來。接下來，電流會流到固定接口④，然後流經3個（德國防衛軍版）或4個（德國海軍M4版和德國國防軍情報局版）轉子⑤，之後進入反射器⑥。反射器將電流從另一條線路向反方向導出，電流會再一次通-{}-過轉子⑤和固定接口④，之後到達插孔S，又通-{}-過一條電線⑧流到插孔D，最後通-{}-過另一個雙向開關⑨點亮顯示燈。
轉子的轉動造成的電流路徑的持續變化使恩尼格瑪密碼機（在當時）具有了高度的保密性。

**轉子**
轉子組成了恩尼格瑪密碼機的核心部分。每個轉子的直徑大約為10釐米，形狀為圓盤形，由硬質橡膠或電木製成，一系列由彈簧承載的黃銅管腳呈環形排列於其中一面，而另一面相對應的則是圓形的金屬觸點。管腳與觸點代表的是字母表上的全部字母，典型的排列就是A-Z（以下的介紹全部假設轉子為這種排列方式）。當兩個轉子的位置相鄰時，其中一個的管腳就會接觸另外一個的金屬觸點，這就形成了一個通路。在轉子內部，有26條金屬線將一面的管腳與另一面的觸點連接起來，這些金屬線的排列方式在每個轉子內都有所不同。
恩尼格瑪密碼機的三個轉子和一個軸
單一的一個轉子的加密方式是很簡單的，它只使用了一種初級的替換式密碼。比如說，E鍵對應的管腳可能會連到同一個轉子另一面的T觸點。使恩尼格瑪密碼機的加密變得複雜的是多個轉子的同時使用，一般在一臺恩尼格瑪密碼機內有3個或4個轉子，在輸入信息的同時轉子還會轉動，這就產生了一種安全得多的加密方式。
當被放進恩尼格瑪密碼機後，一個轉子可以有26種排列方法。它可以通過操作員來轉動，如圖2所示。為了使操作員知道轉子的轉動情況，每個轉子在轉盤外部都有一個刻著字母或數字的環；其中一個字母可以通過一個小窗看見，這樣操作員可以看到轉子的轉動情況。在恩尼格瑪的早期型號中，該字母環固定於轉子上，但在後來的型號中，操作員可以通過調整字母環的位置而調整轉子內的線路。
每個轉子上都有一個V形刻痕（有時有多個），這些刻痕用來控制轉子的轉動。在軍用恩尼格瑪密碼機中，這些刻痕位於字母環上。
陸軍和空軍的恩尼格瑪密碼機在一開始只擁有3個轉子，1938年12月15日開始使用5個轉子。這些轉子使用羅馬數字來辨識：I、II、III、IV、V，每個轉子都有一個V形刻痕，這些刻痕在每個轉子上的字母環中的位置都有所不同。這本來是一種安全措施，但最終它成為了波蘭時鐘解碼法和英國Banburismus解碼法的突破口。
德國海軍使用的恩尼格瑪密碼機比其它軍種的擁有更多轉子（調節器）：一開始為6個，後來變成7個，最終增加到8個。這三個新加的轉子被命名為VI、VII和VIII，內部線路互不相同，並且具有兩個V形刻痕，它們分別位於N觸點與A觸點，這使轉子的轉動更為頻繁。
四個轉子的海軍版恩尼格瑪密碼機為轉子預留的空間與三個轉子版的一樣。為了放入第4個轉子，原來三個轉子版的反射器需要被換成一個較薄的反射器，而且第4個轉子也是一個特殊的轉子。這第4個轉子有兩種型號，即Beta型和Gamma型。這個轉子是不會旋轉的，但是它可以被手動調到26個位置中的任意一個。

**轉動**
恩尼格瑪密碼機轉子的轉動示意圖。綠色的為防倒轉裝置。轉子①的防倒轉齒總是與防倒轉爪相接，所以在每一次按鍵後都會轉動。轉子②的防倒轉齒現在與防倒轉爪相接，因為防倒轉爪位於第一個轉子上的缺口內。而轉子③的防倒轉齒沒有與防倒轉爪相接，因為防倒轉爪位於第二個轉子上的缺口以外，所以它只會沿著轉子②的光滑外緣滑動。
為了避免產生簡單（並且容易破譯）的加密信息，有些轉子在操作員連續按下同一個鍵時也會轉動。這就保證了每次按鍵得到的結果都不一樣，也就會產生很難破譯的複式密碼。
為了達到這個效果，最常見的佈局就是使用一個防倒轉齒和防倒轉爪系統。每個轉子都有26個防倒轉齒，一組防倒轉爪與這些齒相接。這些爪在每次按鍵後都會向前推，如果防倒轉爪與防倒轉齒相接的話，轉子就會旋轉一點。
在德國防衛軍的恩尼格瑪密碼機中，每個轉子都有一個可調節的帶缺口的外環。5個最基本的轉子（I-V）各有一個缺口，而附加的轉子VI、VII和VIII各有兩個缺口。在轉子轉動到某一點時，第二個轉子的防倒轉爪正好位於它的缺口之內，這就使第二個轉子在下一次按鍵後也會轉動。當防倒轉爪位於缺口之外時，它就只會沿著另一個轉子外環的光滑邊緣滑動。在所有轉子都只有一個缺口的系統中，第一個轉子每轉26次就會使第二個轉子轉動一次，同樣的，第二個轉子每轉動26次就會使第三個轉子轉動一次。第三個轉子轉動的同時第二個轉子也會轉動。
這種兩個轉子同時轉動的現象使它與計程器區別開來。這個現象出現於下述情況：第一個轉子轉動完之後帶動了第二個轉子轉動一點，如果這時第三個轉子的防倒轉爪正好落入第二個轉子外環的缺口內，那麼在下一次按鍵時，第三個轉子就會轉動一點，同時它的防倒轉爪也會推動第二個轉子的外環，這樣就使第二個轉子連續兩次轉動。
當擁有三個轉子，並且第一和第二個轉子的外環各有一個缺口時，一臺恩尼格瑪密碼機就會擁有26×25×26 = 16,900個組合（不是26 X 26 X 26，因為第二個轉子會與第三個轉子一起轉動，參看參考資料中的一個PDF文件，它解釋了這個現象）。在歷史上，每條信息的長度都被限制在幾百個字母以內，所以在同一條信息中輸入同樣的字母產生同樣的密碼的機率是很小的。
為了給1942年啟用的海軍用第四個轉子騰出空間，反射器經過了改造變得非常薄，多出來的空間就可以放入第四個特殊的轉子。轉子系統的其餘部分不做改變。因為整個系統中只有三個防倒轉爪，所以第四個轉子從來都不會自動轉動，但是它的位置可以手動調節。
當按下一個鍵後，轉子會在電路接通之前轉動。
這是恩尼格瑪密碼機轉子組。三個轉子位於右邊的固定接口和左邊（標著B）的反射器兩個裝置之間。

**固定接口**
固定接口，又稱作定子，是將插銷或鍵盤與顯示燈連接起來的裝置。儘管固定接口中的線路分佈對於密碼的安全性影響很小，但是這還是阻礙了波蘭密碼學家馬裡安·雷耶夫斯基對恩尼格瑪密碼機密碼的破譯過程。商業恩尼格瑪密碼機的鍵盤上，Q鍵代表A，W鍵代表B，E鍵代表C，依此類推，而軍用恩尼格瑪密碼機的鍵對應的就是鍵上的字母。

**反射器**
除了早期的A型和B型之外，恩尼格瑪密碼機的最後一個轉子之後都有一個反射器，反射器是恩尼格瑪密碼機與當時其它轉子機械之間最顯著的區別。它將最後一個轉子的其中兩個觸點連接起來，並將電流沿一個不同的路線導回。這就使加密過程與解密過程變得一致。但是，反射器也使恩尼格瑪密碼機具有了如下性質：加密後得到的字母與輸入的字母永遠不會相同。這在概念上和密碼學上都是一個嚴重的錯誤，這個錯誤最終被盟軍解碼人員利用。
在商業用恩尼格瑪密碼機（C型）中，反射器可以有兩種不同的安裝方式。在D型中它可以有26種方式。而在軍用恩尼格瑪密碼機中，反射器可以像轉子一樣轉動。
在德國陸軍和空軍版恩尼格瑪密碼機中，反射器是固定的，並且不會旋轉；他們用的恩尼格瑪密碼機一共有4個版本。最初的版本被標記為A型，1937年11月1日它被B型取代。第三種型號，C型，在1940年被短暫地使用過，它最終被木屋6號破解。D型擁有一個可以重新接線的反射器，首次測試於1944年1月2日，這個版本允許操作員來調整接線方式。

**接線板**
接線板位於恩尼格瑪密碼機前部鍵盤的下方。當用到接線板時，操作員最多可以在上面接13條線。在此圖中，接線板上共有兩對字母被連接起來（S-O和J-A）。
接線板允許操作員設置各種不同的線路。它首先在1930年被用於德國陸軍，很快地，德國海軍也開始使用它。193連接線板極大地增強了恩尼格瑪密碼機的保密性，它的使用相當於多增加了不止一兩個轉子。沒有接線板插口之間的恩尼格瑪密碼機可以被很容易地用人工方法破解，但是加上連接線板後，盟軍的密碼專家就需使用特殊的機器了。

接線板上的每條線都會連接一對字母。這些線的作用就是在電流進入轉子前改變它的方向。為了解釋它的原理，我們把E插口和Q插口連接起來。當操作員按下E鍵時，電流就會先流到Q插口（相當於按下Q鍵）再流經轉子。接線板上最多可以同時接13條線。

電流會從鍵盤流經接線板，之後進入轉子。接線板上的每個插口內都有兩個插孔，當將插頭插入時，上插孔（連到鍵盤）與下插孔（連到轉子）之間的連接就會被斷開。另外一個插口內的上插孔會與此插口內的下插孔連接起來，而下插孔會與此插口內的上插孔連接起來，這樣就完成了兩個插口之間的連接。
Schreibmax是一種可以與恩尼格瑪密碼機連接的打印裝置，有了它，操作員就不用辛苦地抄下顯示板上的字母了。

**附件**
Uhr配件
M4版恩尼格瑪密碼機配備的一個很有用的附件就是Schreibmax，這是一臺小型打印機，它可以將字母打在一張紙條上。這就使德軍不用再使用第二個操作員來記下顯示板上的字母了。Schreibmax位於恩尼格瑪密碼機的頂部並與顯示板連接。為了安裝Schreibmax，顯示板的蓋子與裡面的所有燈泡都需要被拆下。Schreibmax除了使用方便之外還可以提高保密性，因為它可以放置在離恩尼格瑪密碼機很遠的地方，這樣就不會有第三者看見未加密的原文了。
另外一個附件就是獨立式顯示板。如果恩尼格瑪密碼機配備了一個附加的顯示板，那麼裝它的木盒就會更寬。安裝獨立式顯示板也要求將顯示板的蓋子與裡面的燈泡拆下。
1944年德國空軍啟用了Uhr（鐘）系統。這是一個包含了一個旋鈕的盒子，這個旋鈕有40種位置。這個盒子的功能相當於接線板。

**數學描述**
恩尼格瑪對每個字母的加密過程可以以數學的角度看作為一個組合過程。假設一臺德國陸軍/空軍版3轉子恩尼格瑪密碼機，P表示接線板的連線（plugboard），U表示反射器，L、M、R表示左（left）、中（middle）、右（right）轉子。那麼加密後的信息
就可以表示成

**操作步驟**
在使用中，恩尼格瑪密碼機每天都需要一份鍵盤設置清單和一些附加文件。德國海軍用恩尼格瑪密碼機的操作步驟比其它軍種使用的更復雜並且更安全。海軍的密碼本也是用水溶性的紅色墨水在粉色紙上印製而成的，這樣己方人員就可以在它可能被敵人繳獲的時候輕鬆地將它銷燬。圖中的密碼本是盟軍從U-505號潛艇上繳獲的。
德軍的各支部隊使用一些不同的通訊線路，每條線路中的恩尼格瑪密碼機都有不同的設置。為了使一條信息能夠正確地被加密及解密，發送信息與接收信息的恩尼格瑪密碼機的設置必須相同；轉子必須一模一樣，而且它們的排列順序，起始位置和接線板的連線也必須相同。所有這些設置都需要在使用之前確定下來，並且會被記錄在密碼本中。
恩尼格瑪密碼機的設置包含了以下幾個方面：
*轉子：轉子的結構及順序。
*起始位置：由操作員決定，發送每條消息時都不一樣。
*字母環：字母環與轉子線路的相對位置。
*接線板：接線板的連線。
*在末期版本中還包括了反射器的線路。
恩尼格瑪密碼機被設計成即使在轉子的線路設置被敵人知道時仍然會很安全，儘管在實際使用中德軍盡了全力來防止線路設置被洩露出去。如果線路設置為未知，那麼最多需要嘗試10114種情況才可能推算出恩尼格瑪密碼機的密碼；當線路和其它一些設置已知時，也最多需要嘗試1023次。恩尼格瑪密碼機的使用者對它的保密性很有信心，因為敵人不可能使用窮舉法來找出密碼。

**指示器**
恩尼格瑪密碼機的大部分設置都會在一段時間（一般為一天）以後被更換。但是，轉子的起始位置卻是每發送一條信息就要更換的，因為如果一定數量的文件都按照相同的加密設置來加密的話，密碼學家就會從中得到一些信息，並且有可能利用頻率分析來破解這個密碼。為了防止這種事情發生，轉子的起始位置在每次發送信息之前都會被改變。這個方法被稱作“指示器步驟”。
圖2。當蓋子蓋上後，恩尼格瑪密碼機就可以開始使用了。轉子的外緣從蓋子內伸出，使操作員能夠改變它的位置，而且這些轉子現在的位置（RDKP）可以通過一系列小窗讓操作員看見。
最早期的指示器步驟成為了波蘭密碼學家破譯恩尼格瑪密碼機密碼的突破口。在這個步驟中，操作員會先按照密碼本中的記錄來設置機器，我們假設這時的轉子位置為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。比較長的信息會被分成幾個部分來發送。

**恩尼格瑪的破譯**
一臺接近完成的“炸彈”機複製品
1931年11月8日，法國情報人員與德軍通訊部門長官魯道夫·施密特（就是他下令德軍使用恩尼格瑪密碼機的）的弟弟——漢斯-提羅·施密特，在比利時接頭。在德國密碼處工作的施密特很厭惡納粹政權，於是他就向法國情報人員提供了兩份有關恩尼格瑪密碼機的操作和轉子內部線路的資料。但是法國還是無法破譯它的密碼，因為恩尼格瑪密碼機的設計要求之一就是要在機器被繳獲後仍具有高度的保密性。當時的法軍認為，由於凡爾賽條約限制了德軍的發展，所以即使無法破譯德軍的密碼，將來如果在戰場上相見也不會吃多大虧，於是在得出德軍密碼“無法破譯”的結論之後，就再也沒有用心地研究它了。
與法國不同，第一次世界大戰中新獨立的波蘭的處境卻很危險，西邊的德國根據凡爾賽條約割讓給了波蘭大片領土，德國人對此懷恨在心，而東邊的蘇聯也在垂涎著波蘭的領土。所以波蘭需要時刻了解這兩個國家的內部信息。這種險峻的形勢造就了波蘭一大批優秀的密碼學家。他們很容易就監控住了德軍內部的通訊系統，但是1926年被德軍啟用的恩尼格瑪密碼機卻給他們造成了很大困難。
1921年，波蘭與法國簽訂了一個軍事合作協議。在波蘭的堅持之下，法國把從施密特那裡得來的情報交給了波蘭人。恩尼格瑪的指示器步驟存在嚴重缺陷，波蘭人正是以這個缺點為突破口破解了商業用恩尼格瑪密碼機。
布萊切利園
1940年由“超級機密”破解的德軍情報表示，德國人會在11月14日進行大規模空襲，地點包括倫敦、考文垂在內的三個可能地點。最終英國人也未能確認地點，未能阻止考文垂大轟炸的發生。Q5424088的書中說丘吉爾已確認了空襲地點，但出於隱匿“超級機密”的考慮未採取預防措施，這一說法廣泛流傳乃至電視劇《神探夏洛克》也有所引用pp=82–83。Q367200，David Hunt, Baron Hunt of Wirral爵士1976，Q29426385和Q1364666對此進行了全面的反駁，指當時丘吉爾正在前往迪奇利公園的路上，被告知倫敦將會被空襲，於是折回唐寧街十號準備在空防部頂樓親眼觀看空襲。
但1941年英國海軍在4=喬·貝克-克雷斯威爾艦長的鬥牛犬號軍艦捕獲德國潛艇U-110才真正拿到德國海軍用的密碼機和密碼本，並將此事保密只告訴美國羅斯福總統，英國國王喬治六世稱讚此事件是整個二次大戰海戰中最重要的事件。這讓原本連數學天才圖靈也破解不出的德軍密碼機得到破解，盟軍設計的專門用來破譯恩尼格瑪密碼的“炸彈”機也大大提高了布萊切利園的工作效率。
在戰爭結束以後，英國人並沒有對破解恩尼格瑪一事大加宣揚，因為他們想讓英國的殖民地用上這種機器。1967年，波蘭出版了第一本有關恩尼格瑪破譯的書，1974年，曾在布萊切利園工作過的英國人威廉·溫特博特姆寫的《超級機密》（The Ultra Secret）一書出版，這使外界廣泛地瞭解到了第二次世界大戰中盟軍密碼學家的辛勤工作。但是書中的丘吉爾為保守秘密而不通知考文垂將被轟炸一段被認為是小說家言，並非史實。
2001年4月21日，以為破譯恩尼格瑪而做出了重大貢獻的三位傑出的波蘭密碼學家馬裡安·雷耶夫斯基、傑爾茲·羅佐基和亨裡克·佐加爾斯基命名的雷耶夫斯基、羅佐基和佐加爾斯基紀念基金在華沙設立，它在華沙和倫敦設-{}-置了這些波蘭密碼學家的紀念銘牌。2001年7月，基金會在布萊切利園安放了一塊基石，上面刻著丘吉爾的名言“人類衝突史上從未有如此之少數，於如此短暫之時，挽救如此多眾生。”

**恩尼格瑪密碼機的歷史與發展**
恩尼格瑪密碼機系列中包含了許多型號。最初的恩尼格瑪密碼機是1920年代早期啟用的商業用型號。1920年代中期，德國軍方的各支部隊也開始使用恩尼格瑪密碼機，他們進行了一些改進以提高它的保密性。一些其它國家也使用了恩尼格瑪密碼機或它的仿製品。
美國國家密碼博物館展出的一些恩尼格瑪密碼機。它們從左到右分別為：①商業用恩尼格瑪密碼機，②T型恩尼格瑪密碼機，③G型恩尼格瑪密碼機，④未知型號，⑤德國空軍版恩尼格瑪密碼機，⑥德國陸軍版恩尼格瑪密碼機，⑦德國海軍版恩尼格瑪密碼機，即M4型

**商業用恩尼格瑪密碼機**
1,657,411，1928年取得專利。
1918年2月23日，德國工程師Q58816申請了他設計的一種使用轉子的密碼機的專利，並和Q27528601組建了謝爾比烏斯和裡特公司。他們向德國海軍和外交部推銷這種密碼機，但是沒有人對它感興趣。他們隨後將專利權移交給了Gewerkschaft Securitas，他在1923年7月9日組建了Chiffriermaschinen Aktien-Gesellschaft（意為“密碼機股份公司”）；謝爾比烏斯和裡特任董事。
恩尼格瑪密碼機的徽標
該公司隨後開始推銷他們的“恩尼格瑪A型”轉子機，它從1923年到1924年都在萬國郵政聯盟大會展出。這臺機器很笨重，它包含了一臺打字機。它的體積為65×45×35立方厘米。重量大約為50公斤。之後，B型恩尼格瑪密碼機也被生產了出來，它在結構上與A型相似。儘管名字為“恩尼格瑪”，但A和B兩種型號和後來的型號之間有很大的差別，這兩種型號在大小和形狀上有所不同，並且沒有反射器。
反射器這個主意是由謝爾比烏斯的同事Q23063395想出來的，1926年的“恩尼格瑪C型”首先安裝了反射器。反射器是恩尼格瑪密碼機的一個顯著特徵。
一臺罕見的8轉子恩尼格瑪密碼機
C型比前幾種型號更小且更易於攜帶。它沒有配備打字機，而是由操作員來記下顯示板上的信息，所以它又有了“亮著燈的恩尼格瑪密碼機”這樣一個外號。恩尼格瑪C型很快就被恩尼格瑪D型（1927年開始生產）取代。D型得到了廣泛的應用，它的樣品被送到過瑞典、荷蘭、英國、日本、意大利、西班牙、美國和波蘭。

**軍用恩尼格瑪密碼機**
德國海軍是德國第一支使用恩尼格瑪密碼機的部隊。海軍型號從1925年開始生產，於1926年開始使用。鍵盤和顯示板包含了29個字母，即A-Z、Ä、Ö和Ü，它們在鍵盤上按順序排列，而不是按一般的QWERTY式。每個轉子有28個觸點，字母X的線路不經過轉子，也不被加密。操作員可以從一套5個轉子之中選擇三個，而反射器可以有四種安裝位置，代號分別為α、β、γ和δ。1933年7月這種型號又經過了一些小改進。
到了1928年7月15日，德國陸軍已經有了他們自己的恩尼格瑪密碼機，即“恩尼格瑪G型”，它在1930年6月經過改進成為了“恩尼格瑪I型”。恩尼格瑪I型於二戰之前與進行的時候在德國軍方和其它一些政府組織那裡得到了廣泛的應用。恩尼格瑪I型與商業用恩尼格瑪密碼機最顯著的不同就是I型有一個接線板，這極大地提高了它的保密性。其餘的一些不同點包括了固定的反射器，並且I型轉子的V形刻痕移到了字母環上。這臺機器體積為28×34×15立方厘米，重量約為12公斤。
這是一臺T型恩尼格瑪密碼機，它由K型改裝而來，由日軍使用。
1930年，德國陸軍建議海軍採用他們的恩尼格瑪密碼機，他們說（有接線板的）陸軍版安全性更高，並且各軍種之間的通信也會變得簡單。海軍最終同意了陸軍的提議，並且在1934年啟用了陸軍用恩尼格瑪密碼機的海軍改型，代號為“M3”。當陸軍仍然在使用3轉子恩尼格瑪密碼機時，海軍為了提高安全性可能要開始使用5個轉子了。
1938年12月，陸軍又為每臺恩尼格瑪密碼機配備了兩個轉子，這樣操作員就可以從一套5個轉子中隨意選擇三個使用。同樣在1938年，德國海軍也加了兩個轉子，1939年又加了一個，所以操作員可以從一套8個轉子中選擇三個使用。1935年8月，德國空軍也開始使用恩尼格瑪密碼機。1942年2月1日，海軍為U型潛艇配備了一種四轉子恩尼格瑪密碼機，代號為“M4”（它的通信網絡叫做“蠑螈”，而盟軍叫它“鯊魚”）。
曾經還有一種大型八轉子可打印型恩尼格瑪密碼機，叫做“恩尼格瑪II型”。1933年，波蘭密碼學家發現它被用於德軍高層之間的通訊，但是德軍很快就棄用了它，因為它不可靠，並且經常出故障。
德國防衛軍使用的恩尼格瑪密碼機G型，它有四個轉子，沒有接線板，並且在轉子上有多個V形刻痕。
德國防衛軍用的是“恩尼格瑪G型”。這種型號有四個轉子，沒有接線板，並且在轉子上有多個V形刻痕。這種恩尼格瑪密碼機還有一臺會記錄按鍵次數的計數器。
瑞士的4轉子恩尼格瑪K型，生產於德國，它使用了重新接線的轉子。
其它國家也使用了恩尼格瑪密碼機。意大利海軍使用了商業用恩尼格瑪密碼機來作為“海軍密碼機D型”。西班牙也在內戰中使用了商業用恩尼格瑪密碼機。英國密碼學家成功地破解了它的密碼，因為它沒有接線板。瑞士使用了一種叫做“K型”或“瑞士K型”（軍方與外交機構使用）的密碼機，它與商業用恩尼格瑪密碼機D型非常相似。許多國家都破解了它的密碼，這些國家包括了波蘭、法國、英國和美國。日軍使用了“恩尼格瑪T型”。
恩尼格瑪密碼機並不是完美的，尤其是在盟軍瞭解了它的原理之後。這就使盟軍能夠破譯德軍的通訊，而這在大西洋海戰中是具有關鍵作用的。
人們估計一共有100,000臺恩尼格瑪密碼機被製造出來。在二戰結束以後，盟軍認為這些機器仍然很安全，於是將他們繳獲的恩尼格瑪密碼機賣給了一些發展中國家。

**保-{}-存下來的恩尼格瑪密碼機**
於華沙展出的恩尼格瑪密碼機。
盟軍破解恩尼格瑪密碼機的過程直到1970年才公開。從那以後，人們對恩尼格瑪密碼機產生了越來越多的興趣，美國與歐洲的一些博物館也開始展出了一些恩尼格瑪密碼機。慕尼黑的德國博物館有一臺3轉子和一臺4轉子恩尼格瑪密碼機，還有幾臺商業用恩尼格瑪密碼機。美國國家安全局的國家密碼學博物館有一臺恩尼格瑪密碼機，來參觀的客人可以用它來加密及解密信息。美國的計算機歷史博物館、英國的布萊切利園、澳大利亞堪培拉的澳大利亞戰爭紀念館和德國、美國和英國一些地方也展出著恩尼格瑪密碼機。現在已經關閉了的聖地牙哥計算機博物館的展品中有一臺恩尼格瑪密碼機，它在博物館關閉後被送給了聖迭戈州立大學圖書館。一些恩尼格瑪密碼機也成為了私人收藏品。
恩尼格瑪密碼機有時也會被拍賣，20,000美元的競拍價並不稀奇。
恩尼格瑪密碼機的複製品包括了一臺德國海軍M4型的複製品，一臺電子系統經過了改進的恩尼格瑪密碼機（恩尼格瑪E型），各種計算機模擬軟件和紙製模型。
一臺罕見的序號為G312的德國情報局版恩尼格瑪密碼機於2000年4月1日從布萊切利園被偷走。9月，一個自稱“老大”的人放出消息說他要得到25,000英鎊，否則就會將那臺恩尼格瑪密碼機毀掉。2000年10月，布萊切利園的官員宣佈他們會支付這筆錢，但是在錢付完之後敲詐者卻沒有回信。就在此後不久，它被匿名地送到了BBC的記者傑里米·帕克斯曼那裡，但是三個轉子卻不見了。2000年11月，一個叫做丹尼斯·葉茨的古董交易家在給星期日泰晤士報打電話要交還那些遺失的轉子後被拘捕。事後那臺恩尼格瑪密碼機被送回了布萊切利園。2001年10月，葉茨在承認他就是偷了那臺恩尼格瑪密碼機並對被布萊切利園董事基絲丁·拉吉（Christine Large）進行了敲詐的人後，被判了10個月的有期徒刑，但他堅持說自己只是為第三者服務的一箇中間人。他在入獄三個月後被釋放。

**恩尼格瑪密碼機的變種**
恩尼格瑪密碼機對密碼機的設計是非常有影響的，有一些其它的轉子機械就起源於它。英國的Typex機就起源於恩尼格瑪密碼機的專利設計，它甚至包含了真實的恩尼格瑪密碼機中並未應用的專利設計。為了保密，英國政府沒有為應用這些專利設計付版稅。日本使用了一種被美國密碼學家稱作GREEN的恩尼格瑪密碼機複製品。在這臺並沒有被大量使用到的機器中，四個轉子是垂直排列的。美國密碼學家Q969082設計了M-325，這是一臺與恩尼格瑪密碼機具有相似原理的機器，但它從沒有被造出來過。
2002年，荷蘭的塔吉雅娜·凡·瓦克（Tatjana van Vark）製造了一臺獨特的轉子機器。這臺機器也是起源於恩尼格瑪密碼機，但是它的轉子有40個金屬觸點及管腳，這就使操作員可以輸入字母、數字和一些標點；這臺機器包含了509個部件。

**相關改編**
創作的戲劇“破譯密碼”的內容為艾倫·圖靈的生活，艾倫·圖靈是在二戰中幫助英國破解恩尼格瑪密碼機的密碼的最大功臣。
英國作家羅伯特·哈里斯於1996年出版的小說“恩尼格瑪”講述的是布萊切利園的密碼學家們破解恩尼格瑪的過程。2001年這本小說被拍成了電影“恩尼格瑪”。
由喬納森·莫斯托拍攝並於2000年上映的電影U-571講的是一群美國潛艇兵為繳獲一臺恩尼格瑪密碼機而搶了一艘德國潛艇後的故事。電影中的恩尼格瑪密碼機是一個收藏家手裡的真品。這部電影的情節並沒有嚴格地按照歷史發展，英國皇家海軍在1941年擊敗德軍潛艇U-110號最早獲得德國海軍密碼機，也是獵殺U-571電影的真實版本，美國只是在1944年諾曼底登陸之前繳獲了一艘U型潛艇。
2014年上映的電影《模仿遊戲》講述了艾倫·圖靈等英國的數學家、邏輯學家協助軍方破解恩尼格瑪密碼機的過程。
2019年網易推出的非對稱對抗懸疑手遊《第五人格》中求生者陣營需要破譯五臺密碼機讓大門開啟，逃生所需破譯的五臺密碼機就是恩尼格瑪密碼機。

**相關**
密碼學
*其他二戰時期的密碼機：
**Sigaba（美國）
**Typex（英國）
**Lorenz SZ 40/42（德國，其盟軍代號為「金槍魚」）
**Siemens and Halske T52（德國，其盟軍代號為「鱘魚」）
**Geheimschreiber
**紫密碼機（日本主要的密碼機，パープル暗號）
*M-209- Enigma@Home date=20120118133949  （一個旨在通過分佈式計算破譯Enigma密碼的BOINC項目）

**腳註**

**參考資料**
 Bauer, 2000, p. 108, Bauer, 2000, p. 112 .- Hamer, David H.;  Sullivan, Geoff; Weierud, Frode; Enigma Variations: an Extended Family of Machines; Cryptologia 22（3）, July 1998.  Online version (PDF). archive.today- Ulbricht, Heinz; Die Chiffriermaschine Enigma—Trügerische Sicherheit: Ein Beitrag zur Geschichte der Nachrichtendienste, PhD Thesis, 2005（in German）.  Online version (PDF).- Hinsley and Stripp, Alan;（eds.）; Codebreakers: The Inside Story of Bletchley Park; 1993; pp. 83–88. Section by Alan; Stripp The Enigma Machine: Its Mechanism and Use- Kahn, David; Seizing the Enigma: The Race to Break the German U-Boats Codes, 1939-194;（1991）- Kruh, Louis; Deavours,Cipher; The Commercial Enigma: Beginnings of Machine Cryptography; Cryptologia, 26（1）, pp. 1–16, 2002.  Online version (PDF). archive.today- Kozaczuk, Wladyslaw;   The origins of the Enigma/ULTRA  archive.today- Marks, Philip; Weierud Frode; Recovering the Wiring of Enigma's Umkehrwalz A; Cryptologia 24（1）, January 2000, pp55–66.- Smith, Michael  Station X; 4 books (macmillan) 1998; Paperback 2000; ISBN 978-0-7522-7148-4- ENIGMA的興亡 (二) archive.today- ENIGMA的興亡 (三上) archive.today

**延伸閱讀**
 Christine Large, Hijacking Enigma, 2003, ISBN 978-0-470-86347-3.- Philip Marks, "Umkehrwalze D: Enigma's Rewirable Reflector—Part I", Cryptologia 25（2）, April 2001, pp. 101–141.- Philip Marks, "Umkehrwalze D: Enigma's Rewirable Reflector—Part II", Cryptologia 25（3）, July 2001, pp. 177–212.- Philip Marks, "Umkehrwalze D: Enigma's Rewirable Reflector—Part III", Cryptologia 25（4）, October 2001, pp. 296–310.- Tom Perera, The Story of the ENIGMA: History, Technology and Deciphering, 2nd Edition, CD-ROM, 2004, Artifax Books, ISBN 978-1-890024-06-2  date=20210307220226 .- Arturo Quirantes, "Model Z: A Numbers-Only Enigma Version", Cryptologia 28（2）, April 2004.- Heinz Ulbricht, Enigma Uhr, Cryptologia, 23（3）, April 1999, pp. 194–205
照片-  一些恩尼格瑪密碼機的照片 date=20100131020745 -  各種恩尼格瑪密碼機及其部件的照片 date=20100120081742 -  一臺海軍四轉子恩尼格瑪密碼機的照片 date=20110724015209 
描述-  恩尼格瑪密碼機 date=20051201114224 ，作者為Tony Sale- 恩尼格瑪密碼機—密碼學裡的一個著名故事 date=20051026223118 ，作者為Martin Oberzalek-  恩尼格瑪/ULTRA的起源 archive.today，作者為Dr. Wladyslaw Kozaczuk
模擬軟件和複製品-  教你做M4恩尼格瑪密碼機的複製品-  恩尼格瑪E型 date=20051118035112 —自己製作一臺恩尼格瑪密碼機-  模擬軟件 date=20161230000000  archive.today（Adobe Flash）-  德國三軍恩尼格瑪密碼機的模擬軟件 date=20141208164038 （Microsoft Windows軟件）-  德國三軍恩尼格瑪密碼機的模擬軟件 archive.today（Windows 98/XP/Vista）-  德國三軍恩尼格瑪密碼機的模擬軟件 archive.today（Windows 98/XP/Vista）-  模擬軟件 date=20201002145952 （Swing應用，JAR格式）-  模擬軟件 archive.today（Java applet）  -  enigma模擬軟件 date=20210123130728 （Java applet）  -  模擬軟件 (紙模型)  archive.today -  模擬軟件 date=20201002150002 （WinZip格式）- 恩尼格瑪密碼機轉子線路：
** 恩尼格瑪密碼機轉子與配線 date=20051105104507 
** 恩尼格瑪密碼機轉子
雜項-  David Hamer關於恩尼格瑪密碼機的網頁 archive.today，包括了一些仍然在世上的恩尼格瑪密碼機的名單和價格- 恩尼格瑪密碼機的展出地點清單 date=20210224130814  -  德國軍用手冊檔案 date=20051203002701 ，包括了恩尼格瑪密碼機和密碼系統的秘密手冊-  恩尼格瑪解密教程 date=20210320110100 ，解密10條信息-  截獲並破解恩尼格瑪信息