?
目錄
1?滾筒密碼
2?棋盤密碼
3?凱撒密碼
4?單表代換與多表代換
4.1?單表代換
4.2?多表代換
? ? ? ? 密碼技術(shù)最早起源于公元前404年的希臘,此后密碼大致經(jīng)歷了古典密碼、近代密碼和現(xiàn)代密碼三個(gè)階段。
? ? ? ? 古典密碼(公元前五世紀(jì)~19世紀(jì)末)代表性的是滾桶密碼、棋盤密碼和凱撒密碼。
1?滾筒密碼
? ? ? ? 滾筒密碼原理為信息發(fā)送者在特定直徑的木棒(斯巴達(dá)棒)上螺旋纏繞一條羊皮紙,然后在紙上橫著寫上信息,信息接收者需要將羊皮紙重新纏繞在相同直徑的模板上才能讀到初始信息,否者字母順序錯(cuò)位,斯巴達(dá)棒利用置換(換位)的方法達(dá)到加密的目的。

? ? ? ?因?yàn)槿绻饷苣景糁睆脚c加密木棒直徑不一致,那么讀到的字母組合肯定是不具備特定行業(yè)的,所以針對這種情況的加密方法,可以通過不斷嘗試模板直徑,直到出現(xiàn)的字母具有特定含義來破解。
2?棋盤密碼
? ? ? ?棋盤密碼原理為通過一個(gè)5*5的網(wǎng)格矩陣,將每個(gè)字母轉(zhuǎn)換成兩個(gè)數(shù)字,第一個(gè)數(shù)字是該字母的行數(shù),第二個(gè)數(shù)字是該字母的列數(shù)。
\ |
1 |
2 |
3 |
4 |
5 |
1 |
M |
W |
C |
X |
E |
2 |
F |
A |
Z |
I/J |
K |
3 |
L |
G |
S |
O |
P |
4 |
R |
Q |
N |
T |
U |
5 |
V |
B |
Y |
D |
H |
表1 Polybius矩陣
? ? ? ?
? ? ? ?基于Polybius矩陣的棋盤加密方法,應(yīng)該是最早的對稱加密算法的應(yīng)用,在那個(gè)時(shí)代接收方不知道網(wǎng)格矩陣的前提下,想要破解密文還是非常困難的。這種加密方法需要加解密雙方事先約定好網(wǎng)格矩陣,后面雙方加解密都是基于這個(gè)網(wǎng)格矩陣的,如何保證網(wǎng)格矩陣不被泄露存在很大困難。
3?凱撒密碼
? ? ? ? 凱撒密碼是一種替換加密的技術(shù),其原理是將字母按字母表的順序構(gòu)成一個(gè)字母序列鏈,然后將最后一個(gè)字母與第一個(gè)字母相連成環(huán),接著將明文中的每個(gè)字母對照序列鏈正向或者逆向偏移k個(gè)單位后,形成密文。這里的字母鏈可以是按照所有人都知道的adcdefg……xyz的方式構(gòu)成字母序列鏈
? ? ? ? 假設(shè)信息發(fā)送方以adcdefg……xyz序列鏈,k=+3進(jìn)行信息加密,加密演示如下:
? ? ? ? 明文:Intern,cancel the operation
? ? ? ? 變換表及偏移量:abcdefg……xyz,K=+3
? ? ? ? 密文:Lqwhuq,fdqfho wkh rthudwlrq

? ? ? ? 序列鏈也可以按照加解密雙方事先約定好的不具備特定規(guī)律的字母排序構(gòu)成序列鏈,如sgidqpm……wzu等。
? ? ? ?凱撒密碼其實(shí)也是利用對稱加密原理進(jìn)行信息加密的,這種加密方法同樣存在著序列鏈易泄漏的問題,若竊聽者拿到序列鏈通過枚舉密鑰k值(1-26)就十分容易破解。?
4?單表代換與多表代換
4.1?單表代換
? ? ? ?單表代換是加解密使用同一個(gè)固定的代換表進(jìn)行代換,明文和密文的字母存在惟一對應(yīng)關(guān)系,容易受到頻率統(tǒng)計(jì)分析攻擊。例如愷撒密碼和棋盤密碼等都屬于單表代換。下表為單表代換的字母表,加解密雙方持有共同的代換表即可對信息進(jìn)行加解密。

4.2?多表代換
? ? ? ?多表代換是加解密使用兩個(gè)及兩個(gè)以上的代換表進(jìn)行代換,例如經(jīng)典的維吉尼亞密碼就屬于多表代換,直至二戰(zhàn)時(shí)期,維吉尼亞密碼在整個(gè)歐洲依舊有著廣泛的應(yīng)用,下圖為維吉尼亞密碼表,實(shí)際上維吉尼亞密碼是由一系列凱撒密碼(26個(gè))組成的字母表(當(dāng)密鑰僅為一個(gè)字母時(shí),則就是凱撒密碼),屬于多表密碼的一種簡單形式。

? ? ? ?若維吉尼亞密碼表中我們使用第一行作為明文,則第一列作為密鑰,加密情況如下所下所示。
? ? ? ?明文:intern
? ? ? ?密鑰:khgvsk?
? ? ? ?密文:suykjx,
? ? ? ?明文中n出現(xiàn)2次,而根據(jù)密文無法推斷出明文中某個(gè)字母出現(xiàn)的頻次,因此維吉尼亞密碼可以抗字頻統(tǒng)計(jì)破譯密碼。

? ? ? ?以凱撒密碼為例的單表代換破解:在英語中,每個(gè)字母/相鄰雙字母/相鄰三字母出現(xiàn)還可以通過相鄰雙字母、三字母概率來增加破譯概率),例如字母:E>T>A>O>I,如此在文本信息量較大的情況下,若密文中H出現(xiàn)的頻次最多,那么大概率密文中的H對應(yīng)的是明文中的E,這樣下來很大概率能計(jì)算到偏移量k=3,若字母序列鏈為adcdefg……xyz,則可直接根據(jù)k=3得到如下字母表。

? ? ? ?若字母序列鏈為sgidqpm……wzu等無規(guī)律鏈時(shí),通過密文中字母出現(xiàn)頻次同樣可以逆向推出對應(yīng)明文字母,由此求得k值,對字頻接近的字母還可以利用k值反饋校驗(yàn),提高破譯的準(zhǔn)確度。
? ? ? ?以維吉尼亞為例的多表替換破解其實(shí)原理也是以字頻分析,主要有以下三步。
? ? ? ?第一步:確定密鑰的長度
? ? ? ?求密鑰長度我們以Kasiski 實(shí)驗(yàn)的方法來求,現(xiàn)實(shí)加密過程中,密鑰長度≤明文長度,我們假定密鑰長度為K,假定明文長度文l,那么根據(jù)維吉尼亞密碼表我們知道,第X i,X i+k,X i+2k ······X i+nk (i=1,2,3,···,l)個(gè)字母加密方式其實(shí)用的同一個(gè)凱撒密碼加密的,理解了這個(gè)后我們接下來看一個(gè)實(shí)例。
? ? ? ?根據(jù)維吉尼亞密碼表要加密 “The Great Wall in Beijing, the Huangpu River in Shanghai, the Fifth Avenue in Tianjin, and the Presidential Palace in Nanjing.”這樣一段信息,為了厘清加密過程中的對應(yīng)關(guān)系,筆者畫了下表幫助讀者理解。
? ? ? ?如上表所示,明文的詞組The一共出現(xiàn)了三次,分別對應(yīng)密文中的dlc、dlc、xfo,這難道是巧合嗎?我們分析得到這種對應(yīng)關(guān)系與密鑰的長度K以及兩兩相同詞組之間的間距S有關(guān)。如明文中第1個(gè)The與第2個(gè)The間距S(1,The)=21=nK,第2個(gè)The與第3個(gè)The間距S(2,The)=25 ≠ n K。
? ? ? ?也就是說如果兩個(gè)相同詞組之間的間隔(S)正好等于密鑰長度的整數(shù)倍(nK)時(shí),那么這兩個(gè)相同詞組加密得到對應(yīng)的密文也是一樣的。
? ? ? ?以上例來講,密文中第1個(gè)dlc與第2個(gè)dlc的間距為n K=21,得到K是21的約數(shù)(1或3或7或21),同理若發(fā)現(xiàn)密文中另外兩個(gè)相同詞組的間距為n K=6,則得到K是6的約數(shù)(1或2或3或6)……,最后取所有約數(shù)集合的交集即可求得K值。
? ? ? ?第二步:確定密鑰的內(nèi)容
? ? ? ?在第一步中假設(shè)求的的K=3,也就是說每逢3個(gè)字母就會用到同一套密碼加密,所以只要知道鑰匙的長度K,再分別對3套密碼用頻率分析法,維吉尼亞加密法就破解了。
? ? ? ?接下來就講下如何利用K=3確定密鑰內(nèi)容,我們知道第X i,X i+k,X i+2k ······X i+nk 個(gè)字母加密方式是用的同一套凱撒密碼加密的,在本文中第1、4、7、10、13······個(gè)字母用的同一套凱撒密碼M1加密的,第2、5、8、11、14······個(gè)字母用的同一套凱撒密碼M2加密的,第3、6、9、12、15······個(gè)字母用的同一套凱撒密碼M3加密的,將密文中所有字母按照加密方式的不同進(jìn)行分組,分組情況如下所示。
? ? ? ?這樣我們就將原始密文拆解成K組密文,如下。
? ? ? ?M1組:dokksoskdrxefsrqsno
? ? ? ?M2組:lvxprmrrlykvirelex
? ? ? ?M3組:ccujzhebcyngpqlylf
? ? ? ?每組密文使用同一凱撒密碼加密,因此針對每組采取前文講的字頻分析方法破解即可得到密文字母表,將密文字母表與維吉尼亞密碼表的行進(jìn)行對比,便可以得到每組的密鑰。上例中分別對M1組、M2組、M3組進(jìn)行破解得到三組密鑰分別為:k、e、y,組合得到完整密鑰為:key。
? ? ? ?第三步:根據(jù)密鑰恢復(fù)明文
? ? ? ?知道密鑰后,對照維吉尼亞密碼本就可以知道明文了。文章來源:http://www.zghlxwxcb.cn/news/detail-454874.html
? ? ? ?小結(jié)分析:單表代換密碼加密后的密文具有明文的字頻特征,易通過字頻統(tǒng)計(jì)破解,而多表代還后密文不具備字頻特征,但是遇到二階式頻率分析時(shí)就顯得無能為力了(周期分析根據(jù)密鑰的重復(fù)使用情況進(jìn)行頻率分析),但是增加密鑰長度可以大幅提升破解難度。文章來源地址http://www.zghlxwxcb.cn/news/detail-454874.html
到了這里,關(guān)于密碼學(xué)基本原理和發(fā)展——古典密碼學(xué)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!