1.五種針對(duì)加密信息的攻擊模型
今天記錄一下根據(jù)密碼分析者知道信息的多少揍瑟,密碼學(xué)中分為常見的幾種攻擊模式,以及它們主要用于什么場(chǎng)合乍炉。
在介紹攻擊模式之前绢片,首先需要了解攻擊者想要的是什么?它們想要明文消息岛琼,想知道加密的算法底循。然而,更多的是密鑰槐瑞。大多數(shù)情況下熙涤,我們認(rèn)為加密算法是公開的。
唯密文攻擊
唯密文攻擊是最容易防范的随珠,攻擊者已知的信息是“加密算法”和“密文”—最少的信息量灭袁。這種情況實(shí)際上是比較常見的猬错,因?yàn)楣粽呙鎸?duì)實(shí)際的情況一般會(huì)是:得知一些明文的數(shù)據(jù)格式或者能捕獲到一些明文以及其對(duì)應(yīng)的密文窗看。
已知明文攻擊
已知明文攻擊中分析者還得知了“用與待解的密文同一密鑰加密的一個(gè)或多個(gè)明密文對(duì)”。比較常見的例子是“可能詞攻擊”倦炒,如果攻擊者處理一些特定的信息显沈,他可能知道其中的一些信息,比如電子金融消息往往有標(biāo)準(zhǔn)化的文件頭或者標(biāo)志,一個(gè)完整的會(huì)計(jì)文件放在文件最前面的關(guān)鍵詞應(yīng)該是固定的拉讯。這樣大大減小了破解的難度涤浇,而且在這種環(huán)境下我們要求加密一定不能是線性的,否則就可以通過一部分對(duì)應(yīng)關(guān)系推出了全局的關(guān)系魔慷,保密性將不復(fù)存在只锭。
選擇明文攻擊
選擇明文攻擊中分析者可以獲取“自行選擇的一些明文以及對(duì)應(yīng)的密文(在統(tǒng)一密鑰環(huán)境下)”。如果分析者能夠通過某種方式獲得信源系統(tǒng)院尔,讓發(fā)送方在發(fā)送的消息中插入一端由他選擇的信息就可以實(shí)現(xiàn)選擇明文攻擊蜻展。一個(gè)例子就是差分密碼分析(通過分析特定明文差分對(duì)相對(duì)應(yīng)密文差分影響來獲得盡可能大的密鑰。它可以用來攻擊任何由迭代一個(gè)固定的輪函數(shù)的結(jié)構(gòu)的密碼以及很多分組密碼(包括DES)邀摆,它是由Biham和Shamir于1991年提出的選擇明文攻擊纵顾。- 來自百度百科)
詳細(xì)可以了解?差分分析
選擇密文攻擊
選擇密文攻擊中分析者可以選擇獲得一些密文以及對(duì)應(yīng)的明文,這種攻擊主要攻擊公開密鑰密碼體制栋盹,特別是攻擊其數(shù)字簽名施逾。
選擇文本攻擊
此時(shí)攻擊者獲得了更強(qiáng)的攻擊能力,在攻擊時(shí)不僅可以構(gòu)造多個(gè)明文獲取相應(yīng)的密文例获,還可以構(gòu)造多個(gè)密文獲取相應(yīng)的明文汉额。也就是以上兩種攻擊的結(jié)合體。
2.DES加密
1.基本與原理
DES是個(gè)塊加密法榨汤,按64位塊長(zhǎng)加密數(shù)據(jù)闷愤,即把64位明文作為DES的輸入,產(chǎn)生64位密文輸出件余。加密與解密使用相同的算法和密鑰讥脐,只是稍作改變。密鑰長(zhǎng)度位56位啼器,下圖顯示了DES的工作原理:
DES使用56位密鑰旬渠。實(shí)際上,最初的密鑰是64位端壳,但在DES過程開始之前放棄密鑰的第8位告丢,從而得到56位密鑰,即放棄第8损谦、16岖免、24、32照捡、40颅湘、48、56和64位栗精。放棄之前闯参,可以用這些位進(jìn)行奇偶校驗(yàn)瞻鹏,保證密鑰中不包含任何錯(cuò)誤。
簡(jiǎn)單地說鹿寨,DES利用加密的兩個(gè)基本屬性:替換和變換新博。DES一共16步,每一步稱為一輪脚草,每一輪進(jìn)行替換與變換步驟,下面介紹DES的主要步驟:
(1)首先將64位明文塊送入初始置換函數(shù)涩蜘。
(2)對(duì)明文進(jìn)行初始置換。
(3)初始置換產(chǎn)生轉(zhuǎn)換塊的兩半,假設(shè)為左明文(LPT)和右明文(RPT)构诚。
(4)每個(gè)左明文與右明文經(jīng)過16輪加密過程,各有各的密鑰。
(5)最后,將左明文和右明文重新連接起來霹俺,對(duì)組成的塊進(jìn)行最終置換。
(6)這個(gè)過程的結(jié)果得到64位密文毒费。
其過程如下圖:
2.初始置換
初始置換只發(fā)生一次觅玻,是在第一輪之前進(jìn)行的溪厘,指定初始置換中的變換如何進(jìn)行,如下表所示侧甫。例如披粟,它指出初始置換將原明文塊中的第一位換成原明文塊的第58位守屉,第二位換成明文塊的第50位胸梆,等等须板,這只是把明文塊的進(jìn)行移位习瑰。
| 明文塊中各個(gè)位置 | 初始置換后的內(nèi)容 |
| ---------------- | ---------------- |
| 1? ? ? ? ? ? ? ? | 58? ? ? ? ? ? ? |
| 2? ? ? ? ? ? ? ? | 60? ? ? ? ? ? ? |
| 3? ? ? ? ? ? ? ? | 42? ? ? ? ? ? ? |
| …? ? ? ? ? ? ? ? | …? ? ? ? ? ? ? ? |
| 64? ? ? ? ? ? ? | 7? ? ? ? ? ? ? ? |
上表顯示了IP使用的一部分變換規(guī)則表甜奄。IP完成后课兄,得到的64位置換文本塊分成兩半,各32位搬俊,左塊稱為左明文(LPT)唉擂,右塊稱為右明文(RPT)檀葛。然后對(duì)這兩塊進(jìn)行16輪操作屿聋。
3.DES的一輪
DES的每一輪包括如下圖所示的所有步驟:
第一步:密鑰交換
最初的64位密鑰通過放棄每個(gè)第8位而得到的56位密鑰润讥。這樣象对,每一輪有56位密鑰勒魔。每一輪從這個(gè)56位密鑰產(chǎn)生不同的48位子密鑰冠绢,稱為密鑰交換。為此楷力,56位密鑰分成兩半萧朝,各為28位检柬,循環(huán)左移一位或兩位。例如里逆,可以用下表顯示每一輪移動(dòng)的密鑰位數(shù):
| 輪次 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 |
| -------------- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
| 移動(dòng)的密鑰位數(shù) | 1? ? | 1? ? | 2? ? | 2? ? | 2? ? | 2? ? | 2? ? | 2? ? | 1? ? | 2? ? | 2? ? | 2? ? | 2? ? | 2? ? | 2? ? | 1? ? |