早在公元前1500年,密碼便開(kāi)始出現。轉換密碼、凱撒移位密碼,以及左右著(zhù)二戰進(jìn)程的恩尼格瑪,它們都是如何設置密碼和破解的呢?
你有秘密嗎?如果你有那么我希望你知道怎樣保護它們,因為秘密總是很吸引人。為了保護那脆弱的秘密,人們會(huì )使用密碼,密碼讓機密的內容不會(huì )被人偷看,防止秘密落入他人之手,而且也幫助過(guò)一代又一代的孩子在課堂上傳遞紙條。
密碼的世界籠罩著(zhù)神秘,也充滿(mǎn)詭計、虛假情報和欺騙,那么,密碼是何時(shí)產(chǎn)生的呢?早在公元前1500年,一個(gè)古代的陶工用密碼隱藏他的上釉秘方,成為了人們知道的最早的編碼人;1917年一封破譯的電報導致美國加入了一戰;1939-1945年,破譯恩尼格碼的儀器幫助盟軍贏(yíng)得了二戰的勝利……如今,密碼的使用更是頻繁,電腦和各種賬號密碼保證你的信息安全,政府和間諜繼續使用它們傳遞秘密情報。
代碼和密碼有何區別?
開(kāi)始介紹密碼之前,我希望你最好能知道兩種碼:代碼和密碼。代碼是用別的詞或一組字母代替整個(gè)詞;密碼則是用符號代替單個(gè)字母或聲音,或者改變字母順序。
文章字體顏色的代碼圖解
盡管代碼和密碼不同,卻經(jīng)常廣義地用“密碼”這個(gè)詞來(lái)指定。代碼的工作原理非常簡(jiǎn)單,它不過(guò)是使用了另外一種碼來(lái)隱藏最重要的詞,只要雙方約定了密碼的意義就可以解碼了。代碼的使用十分廣泛,比如你現在正在閱讀的文字,如果有一天每個(gè)人都不知道這些文字的意義,那么它就成了不可破解的秘密了。不要覺(jué)得這很扯,遙遠的過(guò)去那些象形文字就是最好的例子。
象形文字的聯(lián)想繪畫(huà)圖片
凱撒移位法
簡(jiǎn)單的密碼有兩種:用別的符號、字母和數字代替其他字母的替代密碼;把字母用別的順序編寫(xiě)的轉換密碼。替代密碼很簡(jiǎn)單,比如我可以把這篇文章翻譯成英語(yǔ),用英語(yǔ)為這篇文章加密,不過(guò)因為英語(yǔ)被大家普遍掌握,使得這種加密方法顯得過(guò)于簡(jiǎn)單。我們常用的密碼主要是轉換密碼,比較早的轉換密碼有凱撒移位法,它的加密方式是將普通字母表向后移動(dòng)幾位,如下:
凱撒移位密碼
這種方法可以提供25種可能,想要破解也只要嘗試25次即可。為了增加譯碼的難度,我們可以在凱撒移位密碼里加入關(guān)鍵詞。首先,將關(guān)鍵詞放在字母表的開(kāi)頭,然后按照順序完成字母表中剩余部分,從關(guān)鍵詞的最后一個(gè)字母開(kāi)始,省略用過(guò)的字母。
比如以“l(fā)ook”為關(guān)鍵詞,把它放在密碼的字母表開(kāi)頭,因為要省略用過(guò)的字母,“l(fā)ook”只能寫(xiě)為“l(fā)ok”,并且后面的字母表中的“O”也要一并省去,即:
明碼表:ABCDEFGHIJKLMN
密碼表:LOKLMNPQRSTUVW
這種密碼提供了超過(guò) 種的可能性,這樣就不會(huì )被輕易試出密碼啦。如果你認為這樣一種密碼就可以很好地保護你的信息安全,那就圖樣圖森破啦。實(shí)際上,通過(guò)大量的統計人們發(fā)現,英語(yǔ)中有幾種字母出現的頻率比其他字母要高很多,這就給譯碼人提供了一種強有力的武器——頻率分析法。凱撒移位法只是掩蓋了字母本身,并不能改變字母出現的頻率,這樣的密碼正好讓頻率分析法大顯身手。
解密恩尼格瑪機
頻率分析一出現,編碼人就開(kāi)始尋找破壞頻率分析的方法。15世紀一個(gè)叫利昂·巴提斯塔·艾伯提的人想出了使用兩個(gè)或者更多的字母表加密的方法,這就是“多字母表替代體系”。這種替代體系雖然可以阻止譯碼人使用頻率分析法譯出密碼,但是在緊急情況下出錯的幾率也是非常高的。為了更好地使用這種編碼方法,人們需要一種方便的編碼機器。二戰時(shí)期,讓盟軍譯碼人倍感頭疼的恩尼格碼機就是其中著(zhù)名的代表。
恩尼格碼密碼機
恩尼格碼加密法是利用電機系統來(lái)實(shí)現多碼變換的,這種系統叫作回轉輪系統?;剞D輪是一個(gè)圓盤(pán),它的兩面都有電子接點(diǎn),每個(gè)接點(diǎn)代表字母表中的一個(gè)字母?;剞D輪內部有連接各接點(diǎn)的電線(xiàn),這種連接方式定義了簡(jiǎn)單單碼替換方式。數個(gè)這樣的回轉輪和一個(gè)反射器組合起來(lái)就構成了強大的恩尼格碼加密機。然而要想看到它的工作方法,你需要把一種名叫轉子的電動(dòng)密碼轉盤(pán)連接在鍵盤(pán)、顯示屏和電池上。你在鍵盤(pán)上打出普通的字母,電流就沿著(zhù)接觸點(diǎn)流動(dòng),流到轉子的另一個(gè)觸點(diǎn),顯示屏上相應的字母就亮燈。如果你把轉子轉到不同的位置,就改變了接觸點(diǎn)連接鍵盤(pán)的方式。這樣打入同一個(gè)字母,就可能產(chǎn)生不同的密碼字母。
密碼機的接線(xiàn)板
密碼機的轉子組。三個(gè)轉子位于右邊的固定接口和左邊(標著(zhù)B)的反射器兩個(gè)裝置之間
這就是恩尼格碼機的工作原理,只不過(guò)現實(shí)中的恩尼格碼機遠沒(méi)有那么簡(jiǎn)單。為了讓恩尼格碼變得無(wú)法破解,他們在恩尼格碼機上加入了一些其它元素:讓轉子旋轉起來(lái),可以互換的轉子,在機器前加入插接板,或者加入反射體等。旋轉的轉子、可以互換的轉子、機器前的插接板都是為了增加可供加密的字母表個(gè)數,那么反射體是什么?與普通的恩尼格碼機不同的是,反射體的加入使穿過(guò)三個(gè)轉子之后的電流并不直接流向顯示屏,而是沿著(zhù)另一條叫作反射體的線(xiàn)路流動(dòng),從轉子反方向流回來(lái)。
這個(gè)體系設計得很精細,讓電流總是能沿著(zhù)不同的線(xiàn)路流回來(lái)。這意味著(zhù)恩尼格碼機給“a”加碼“U”后,又在完全相同的轉子位置給“u”加碼為“A”??雌饋?lái)非常聰明,但是這也是恩尼格碼機的致命弱點(diǎn)所在,加入反射體后的恩尼格碼機無(wú)法讓被加密的字母變成它本身。正是這個(gè)看似不起眼的弱點(diǎn)卻成了破解它的關(guān)鍵。
如何破解恩尼格瑪密碼?
想要解開(kāi)恩尼格碼,就必須要知道加密方的加密字母表,也就是轉子的設置。為了檢測那些可能出現的轉子位置,二戰時(shí)期盟軍設計了一種名叫“炸彈”的機器。為了解密,他們首先需要找到一個(gè)突破口——一個(gè)他們確信在普通文本的信里出現的一個(gè)詞或者短語(yǔ),然后找到它在密電中的對應詞或者短語(yǔ)。這并不容易,但是恩尼格碼不能加密為本身的特性幫助了他們。譯碼人把作為突破口的普通詞放在密電上方,來(lái)看是否有任何字母相同。如果有,譯碼人就知道這里不是正確的位置,于是試別的地方,如此反復直到試出正確位置。
破譯恩尼格瑪密碼的計算機
關(guān)于對恩尼格碼機解碼的秘密,直到20世紀70年代才公之于眾。而那時(shí),世界上到處都在使用計算機,計算機改變了密碼產(chǎn)生和使用的方式。
密碼學(xué)從最初的凱撒密碼至今,走過(guò)了一個(gè)漫長(cháng)的歷程。計算機的超強計算能力,讓那些經(jīng)典的加密方法都已失效。但是先哲的思想并未失效,密碼學(xué)也仍然在飛速發(fā)展,眼下它正朝著(zhù)量子系統前進(jìn)。一旦進(jìn)入這種新的世界,密碼學(xué)會(huì )發(fā)生什么變化,我們只能靠猜測了。但可以預見(jiàn)的是,這一定不是密碼學(xué)故事的結束,而只是剛剛開(kāi)始。
聯(lián)系客服