官术网_书友最值得收藏!

單純的單套字母替代式密碼法為秘密通訊提供了數(shù)世紀的安全保障后,頻率分析學(xué)一連串的發(fā)展,先是在阿拉伯世界,然后在歐洲,摧毀了它的安全度。蘇格蘭瑪麗女王悲慘的處決,很戲劇性地證明了單套字母替代式密碼法的弱點。很明顯地,這場編碼者和譯碼者的戰(zhàn)役,譯碼者略勝一籌。每個發(fā)送密碼的人事先都必須有心理準備,敵方的解碼專家很可能攔截并破解他們最重要的秘密。

重擔(dān)顯然又落在編碼者身上。他們必須編制一套更強、可以難倒譯碼者的新密碼系統(tǒng)。這樣的密碼直到16世紀末才出現(xiàn),可是它的起源可以追溯到15世紀的佛羅倫薩才子里昂·巴提斯塔·阿爾伯蒂(Leon Battista Alberti)。出生于1404年的阿爾伯蒂是文藝復(fù)興的重要人物之一。他既是畫家、作曲家、詩人、哲學(xué)家,也是第一篇科學(xué)性分析透視法的論文、探討家蠅的論文以及給愛犬的祭文的作者。他最著名的身份大概是建筑師——羅馬特雷維噴泉(Trevi Fountain羅馬有三百多座噴水池,且有很多傳說,特雷維(Trevi)是最有名的一座,傳說丟一個銅板到特雷維噴泉里,日后必定會再回到羅馬。特雷維的歷史悠久且復(fù)雜,最早可溯至1453年,教皇尼古拉五世(Nicolas V)命令阿爾伯蒂興建。其后歷經(jīng)多次變革,現(xiàn)貌是18世紀時薩維(Salvi)和帕尼尼(Parnnini)的作品。)的原始設(shè)計者,著有第一部印刷出版的建筑論著《論建筑》(De re aedificatoria),此書是建筑設(shè)計從哥德風(fēng)格一變而成文藝復(fù)興風(fēng)格的催化劑。

在1460年間,阿爾伯蒂在梵蒂岡的庭院游蕩時,碰到他的朋友萊奧納多·達托(Leonardo Dato),教皇的書記官。達托跟他聊起密碼術(shù)的一些細節(jié)。這段閑聊促使阿爾伯蒂以此為題寫了一篇論文,勾勒出一種他認為的新密碼法。在當(dāng)時,所有替代式密碼法在為一封信函加密時都只用到一套密碼字母。阿爾伯蒂卻建議使用兩套,甚至更多套密碼字母,在加密過程中交替使用,以混淆譯碼者的分析。

例如,我們可以交替使用上面兩套密碼字母來加密信息。假設(shè)要將hello加密,我們先用第一套密碼字母來加密第一個字母,所以h變成A。加密第二個字母時,則改用第二套密碼字母,所以e變成F。加密第三個字母時,又回到第一套密碼字母,加密第四個字母時,又再取用第二套密碼字母。也就是說,第一個I被加密為P,第二個I卻被加密為A。最后一個字母O則又根據(jù)第一套密碼字母加密為D。最后得到的密碼文是AFPAD。阿爾伯蒂系統(tǒng)最主要的優(yōu)點是,明文里相同的字母可能會被轉(zhuǎn)成不同的密碼,如hello的兩個I就被加密成不同的字母。另一方面,在密碼文重復(fù)出現(xiàn)的A也各代表明文里不一樣的字母,先是h,再是I。

阿爾伯蒂雖然想出加密法一千多年來最重大的突破,卻沒有把這個概念發(fā)展成一套完整具體的加密系統(tǒng)。這項任務(wù)落在之后的幾位學(xué)者身上。第一位是德國的約翰尼斯·特里特米烏斯(Johannes Trithemius),一位生于1462年的修道院院長;再來是喬凡尼·波塔,生于1535年的意大利科學(xué)家;最后是布萊斯·德·維吉尼亞(Blaise de Vigenère),生于1523年的法國外交官。維吉尼亞26歲時被派去羅馬擔(dān)任兩年的外交官,因而讀到阿爾伯蒂、特里特米烏斯和波塔的相關(guān)著作。剛開始,他對密碼術(shù)的興趣純?yōu)橥饨还ぷ魃系男枰5搅?9歲時,維吉尼亞認為自己積蓄的錢足以支持他放棄工作,專注于研究生涯了。此時他才仔細審視阿爾伯蒂、特里特米烏斯和波塔的構(gòu)想,將它們發(fā)展成一套既完整又強大的新密碼系統(tǒng)。

圖11:布萊斯·德·維吉尼亞

雖然阿爾伯蒂、特里特米烏斯和波塔都有極重要的貢獻,這套密碼系統(tǒng)仍被稱為維吉尼亞密碼法(Vigenère cypher),以彰顯維吉尼亞將它發(fā)展成形的功勞。維吉尼亞密碼法的力量源于它使用的不僅是一套,而是26套密碼字母來加密信息。它加密的第一道步驟是畫出如表3的維吉尼亞方格:最上面一行是明文字母,下面緊接著26套密碼字母,每套字母都是將它前面那套字母挪移一位而成的。如此,密碼的第一行是移了一位的愷撒挪移式密碼字母,亦即可用來執(zhí)行每個明文字母都由在它后一位字母取代的愷撒式密碼法的密碼字母集。同理,第二行是移了兩位的愷撒式密碼字母集,依此類推。方格最上面一行的小寫字母是明文字母。你可以用這26套密碼字母中的任何一套來進行加密。例如,若使用2號密碼字母,字母a就會被加密成C;若用12號密碼字母,a就會加密成M。

發(fā)信人若只用其中一套密碼字母來加密整則信息,就是一個單純的愷撒式密碼法,這是非常弱的密碼,敵方的攔截者很容易就能破解。維吉尼亞密碼法卻是分別使用維吉尼亞方格里不同列的密碼字母來加密信息的各個字母。換句話說,發(fā)信人加密第一個字母時可以使用第5行的字母集,第二個字母則用第14行,第三個字母則用第21行,以此類推。解譯信息時,收信人必須知道發(fā)信人使用維吉尼亞方格的哪一行字母集加密哪一個字母,所以雙方必須協(xié)議出一套切換所用字母集的系統(tǒng)。這可以借由鑰匙單詞來達成。我們且以WHITE這個鑰匙單詞來加密divert troops to east ridge(部隊改赴東嶺)這則簡短的信息,以示范鑰匙單詞如何用于維吉尼亞密碼法。首先把這個鑰匙單詞拼寫在信息的上方,一再重復(fù),直到信息的所有字母都一一對應(yīng)到鑰匙單詞的字母。再以如下的方式產(chǎn)生密碼文:加密第一個字母d時,我們看到它上方的鑰匙字母是W,就去維吉尼亞方格找出以W起頭的那一行。第22行以W開頭,我們就在這一行找明文字母d的替代字母。以d開頭的直欄和以W起始的橫行在Z交會,所以d在密碼文就是以Z代替。

表3:維吉尼亞方格

重復(fù)上面的程序,加密第二個字母。i上方的鑰匙字母是H,所以用維吉尼亞方格的H行(第7行)來加密這個字母。以i開頭的直欄和以H起始的橫行在P交會,所以i在密碼文是以P代替。鑰匙單詞的每一個字母都對應(yīng)到維吉尼亞方格的某一行密碼字母,這個鑰匙單詞有五個字母,發(fā)信人就循環(huán)使用五行維吉尼亞方格的密碼字母來加密信息。信息的第五個字母是根據(jù)鑰匙單詞的第五個字母E來加密,但在加密信息的第六個字母時,則回到鑰匙單詞的第一個字母。使用更長的鑰匙單詞或鑰匙詞組會讓加密過程中用到更多列密碼字母,從而增加密碼的復(fù)雜度。表4是標(biāo)示出鑰匙字WHITE所指定的五行密碼字母的維吉尼亞方格。

維吉尼亞密碼的最大優(yōu)點是,第一章所介紹的頻率分析法無法攻破它。例如,當(dāng)譯碼者使用頻率分析法解譯密碼文時,通常會先找出密碼文里最常出現(xiàn)的字母(在此例是Z),然后假設(shè)它就是英文最常用字母e的替身。然而字母Z在此例分別代表了三個不同的字母d、r、s,而非e。這當(dāng)然會讓解碼者摸不出頭緒。一個在密碼文出現(xiàn)很多次的字母可以代表數(shù)個不同的明文字母,這讓譯碼者面臨了極其模棱兩可的困境,難以找出破解密碼的線索。同樣造成困擾的是,一個在明文出現(xiàn)很多次的字母,在密碼文卻可能是以數(shù)個不同的字母來代替。例如troops(部隊)這個詞,字母oo是重復(fù)的,卻被不同的字母替代,而被加密為HS。

維吉尼亞密碼法不僅可抵擋頻率分析法的攻擊,而且密碼鑰匙的數(shù)量也很驚人。發(fā)信人和收信人可以協(xié)議采用字典上的任何一個單詞、任何單詞組合,乃至杜撰的單詞。譯碼者無法借由試探可用鑰匙來破解信息,因為數(shù)量實在太大了。

表4:標(biāo)示出鑰匙單詞WHITE所指定的五行密碼字母的維吉尼亞方格。由W、H、I、T、E所指定的這五行密碼字母會在加密過程中循環(huán)使用。

維吉尼亞把他的研究成果寫成《密碼論》(Traité des Chiffres),發(fā)表于1586年。也正是這一年,托馬斯·菲利普破解了瑪麗女王的密碼。假使瑪麗女王的秘書讀到這篇論文,學(xué)會運用維吉尼亞密碼法,菲利普勢必解不開瑪麗寫給貝平頓的密函,她的命或許也就能保住。

這一切只是想當(dāng)然罷了,維吉尼亞密碼法的強度與安全保證,應(yīng)該很快就會讓全歐的密碼秘書趨之若鶩、紛紛采用?畢竟,終于他們又有了一種安全的加密法可用,想必覺得如釋重負。錯了。恰巧相反,各地的密碼秘書似乎都很排斥維吉尼亞密碼法。這個看來毫無缺陷的系統(tǒng),在接下來的兩個世紀里,大受冷落。

主站蜘蛛池模板: 宾川县| 曲阜市| 汝州市| 博湖县| 镇原县| 淅川县| 丹棱县| 泰州市| 云龙县| 江源县| 东乌珠穆沁旗| 扶余县| 花垣县| 兰西县| 毕节市| 宁海县| 荔浦县| 灵川县| 永靖县| 西乌珠穆沁旗| 米泉市| 大悟县| 平江县| 黄陵县| 尼玛县| 靖江市| 亳州市| 扎鲁特旗| 中牟县| 拉孜县| 秦安县| 兴安盟| 新田县| 蒙山县| 余干县| 普兰店市| 菏泽市| 怀柔区| 赫章县| 五常市| 荥阳市|