密码(图解密码技术)_第二章_Enigma密码机
什么是Enigma
Enigma是由亞瑟·謝爾比烏斯于20世紀(jì)初發(fā)明的一種能夠進(jìn)行加密解密的機(jī)器。Enigma在德語(yǔ)里是“謎”的意思。亞瑟·謝爾比烏斯使用能夠轉(zhuǎn)動(dòng)的圓盤和電路,創(chuàng)造成了人類手工所無(wú)法實(shí)現(xiàn)的高強(qiáng)度密碼。在剛剛發(fā)明之際,Enigma被用在了商業(yè)領(lǐng)域,后來(lái)到了納粹時(shí)期,德國(guó)國(guó)防軍采用了Enigma,并將其改良后進(jìn)行了軍事用途。
用Enigma進(jìn)行通訊加密
發(fā)送者和接受則各自擁有一個(gè)Enigma。發(fā)送者用Enigma將明文加密,將生成密文通過(guò)無(wú)線電發(fā)送給接收者。接收者將接收到的密碼用自己的Enigma解密。由于發(fā)送者和接收者必須使用相同的密鑰才能完成加密通信,所有發(fā)送者和接收者會(huì)實(shí)現(xiàn)收到一份叫做國(guó)防軍密碼本的冊(cè)子。(每日一碼)
用Enigma進(jìn)行加密通信的過(guò)程
發(fā)送者—>消息(明文)—>加密(國(guó)防軍密碼本中的“每日密碼”)—>密文—————通過(guò)無(wú)線電通信———>密文---->解密(國(guó)防軍密碼本中的“每日密碼”)---->消息(明文)—>接收者
Enigma的構(gòu)造
Enigma能夠?qū)ψ帜副?6個(gè)字母進(jìn)行加密解密由于復(fù)雜程度,簡(jiǎn)化為4個(gè)
摁下輸入鍵盤上的一個(gè)鍵后,帶你信號(hào)就會(huì)通過(guò)復(fù)雜的電路,最終點(diǎn)亮輸出用的燈泡。
接線板是一種通過(guò)改變接線方式來(lái)改變字母的對(duì)應(yīng)關(guān)系的部件。接線板上的接線方式是根據(jù)國(guó)防軍密碼本的每日密碼來(lái)決定的。
在電路中,我們還能看到三個(gè)轉(zhuǎn)子的部件。轉(zhuǎn)子是一個(gè)圓盤狀的裝置其兩側(cè)的接觸點(diǎn)之間通過(guò)電線相連。盡管每個(gè)轉(zhuǎn)子內(nèi)部的連接方式是無(wú)法改變的,但轉(zhuǎn)子可以在沒(méi)輸入一個(gè)字母時(shí)自轉(zhuǎn)。當(dāng)輸入一個(gè)字母是,轉(zhuǎn)子1就旋轉(zhuǎn)1/4圈(4是由多少個(gè)字母決定的),轉(zhuǎn)子1每旋轉(zhuǎn)1圈,轉(zhuǎn)子2就旋轉(zhuǎn)1/4圈,轉(zhuǎn)子2每旋轉(zhuǎn)1圈,轉(zhuǎn)子3就旋轉(zhuǎn)1/4圈.這三個(gè)轉(zhuǎn)子都是可以拆卸的,在對(duì)Enigma進(jìn)行設(shè)置的時(shí)候可以選擇轉(zhuǎn)子的順序以及它們的初始位置。
示意圖中我們只畫了六個(gè)鍵,下面的示意圖表示了連續(xù)鍵入3個(gè)b的情況:當(dāng)?shù)谝淮捂I入b時(shí),信號(hào)通過(guò)轉(zhuǎn)子中的連線,燈A亮起來(lái),放開(kāi)鍵后,轉(zhuǎn)子轉(zhuǎn)動(dòng)一格,各字母所對(duì)應(yīng)的密碼就改變了;第二次鍵入b時(shí),它所對(duì)應(yīng)的字母就變成了C;同樣地,第三次鍵入b時(shí),燈E閃亮。
Enigma的加密
發(fā)送者將一個(gè)包含5個(gè)字母的德語(yǔ)單詞nacht(夜晚)進(jìn)行加密并發(fā)送。
第1步:設(shè)置Enigma
按照每日密碼,設(shè)置Enigma,具體來(lái)說(shuō),就是在接線板上接線,并將3個(gè)轉(zhuǎn)子進(jìn)行排列。
第2步:加密通信密碼
發(fā)送者想出3個(gè)字母,并將其加密。這3個(gè)字母稱為通信密碼。通信密碼也是Enigma完成的。假設(shè)發(fā)送者選擇通信密碼為psv,那么就要在鍵盤上輸入兩次通信密碼,也就是輸入psvpsv這6個(gè)字母,輸入完后,發(fā)送者可得到psvpsv的密文ATCDVT。
第3步:重新設(shè)置Enigma
通信密碼中的3個(gè)字母實(shí)際代表了3個(gè)轉(zhuǎn)子的初始位置。每個(gè)轉(zhuǎn)子的上面都印有字母,根據(jù)字母來(lái)設(shè)置轉(zhuǎn)子的初始位置。通信密碼psv就表示需要將轉(zhuǎn)子1、2、3分別轉(zhuǎn)到p、s、v所對(duì)應(yīng)的位置。
第4步:加密信息
鍵盤輸入nacht5個(gè)字母,并記錄下所對(duì)應(yīng)的5個(gè)字母(KXNWP)。
第5步:拼接
發(fā)送者將ATCDVT和KXNWP進(jìn)行拼接,拼接成ATCDVTKXNWP,然后通過(guò)無(wú)線電發(fā)送出去。
五 每日密碼和通信密碼
每日密碼:每日密碼是用來(lái)加密通信密碼的。這種密鑰被稱為密鑰加密密鑰。
通信密碼:通信密碼來(lái)加密消息。
六 避免通信錯(cuò)誤
兩次輸入通信密碼psv,是為了避免通信錯(cuò)誤,接收者解密后,如果通信密碼不是3個(gè)字母重復(fù)兩次這樣的形式,就說(shuō)明通信錯(cuò)誤。
七 Enigma解密
第1步:分解
將收到的ATCDVTKXNWP分解為ATCDVT和KXNWP兩部分。
第2步:設(shè)置Enigma
按照每日密碼,設(shè)置Enigma,具體來(lái)說(shuō),就是在接線板上接線,并將3個(gè)轉(zhuǎn)子進(jìn)行排列。這一步和發(fā)送者操作相同。
第3步:解密通信密碼
對(duì)ATCDVT進(jìn)行解密,鍵盤輸入對(duì)應(yīng)字母,輸出psvpsv,psv重復(fù)兩次,接收者判斷通信過(guò)程沒(méi)有錯(cuò)誤。
第4步:重新設(shè)置Enigma
根據(jù)通信密碼psv,重新設(shè)置Enigma,這一步和發(fā)送者的第三步相同。
第5步:解密消息
對(duì)KXNWP進(jìn)行解密,鍵盤輸入KXNWP,輸出明文natcht5個(gè)字母。
八 Enigma的弱點(diǎn)
1 Enigma可以在每次輸入時(shí),通過(guò)3個(gè)轉(zhuǎn)子的旋轉(zhuǎn)來(lái)改變電路。然而,在加密通信密碼這一重要步驟,實(shí)際只有一個(gè)轉(zhuǎn)子1會(huì)旋轉(zhuǎn),這是弱點(diǎn)之一。
2 將通信密碼連續(xù)輸入兩次并加密也是一個(gè)弱點(diǎn)。
3 通信密碼是人為選的的也是一個(gè)弱點(diǎn)。
4 必須派發(fā)國(guó)防軍密碼本也是一個(gè)弱點(diǎn)。
總結(jié)
以上是生活随笔為你收集整理的密码(图解密码技术)_第二章_Enigma密码机的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 深度解读旷视招股书:这557页带你看懂中
- 下一篇: 数论入门 2021-2-28