密碼學(xué)- 塊加密法_第1頁
密碼學(xué)- 塊加密法_第2頁
密碼學(xué)- 塊加密法_第3頁
密碼學(xué)- 塊加密法_第4頁
密碼學(xué)- 塊加密法_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、內(nèi)容綱要內(nèi)容綱要塊加密法模式塊加密法模式乘積加密法數(shù)據(jù)加密標(biāo)準(zhǔn)(數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)Cipher StructuresCipher StructuresBlockStreamClassical.ShiftAffineKeywordMultiLiteralVigenereHillNihilistTranspositionSubstitutionpolyalphabeticmonoalphabeticColumnRC4Block CipherBlock Cipherp塊加密法是最常見的加密類型塊加密法是最常見的加密類型 定義計(jì)算機(jī)的位塊表示幾個(gè)字母定義計(jì)算機(jī)的位塊表示幾個(gè)字母 一次加密整個(gè)塊一次

2、加密整個(gè)塊Modes of OperationModes of Operationp塊加密法的三種標(biāo)準(zhǔn)模式塊加密法的三種標(biāo)準(zhǔn)模式: 電子編碼薄電子編碼薄 (ECB) 加密加密-塊塊-鏈鏈 (CBC) 輸出反饋模式輸出反饋模式 (OFM)電子編碼薄電子編碼薄p電子編碼薄電子編碼薄-最簡(jiǎn)單的模式最簡(jiǎn)單的模式明文的每個(gè)塊加密成密文的一個(gè)塊(使明文的每個(gè)塊加密成密文的一個(gè)塊(使用一個(gè)密鑰)用一個(gè)密鑰)EkM1C1KeyEkM2C2EkMmCmProblem:if Mi = Mj thenCi = Cj加密加密- -塊塊- -鏈鏈p來自上一塊的密文與當(dāng)前的明文塊做來自上一塊的密文與當(dāng)前的明文塊做XOR運(yùn)

3、算運(yùn)算p密文跟明文不再是一一對(duì)應(yīng)的關(guān)系,破解起來更困難,密文跟明文不再是一一對(duì)應(yīng)的關(guān)系,破解起來更困難,而且克服了只要簡(jiǎn)單調(diào)換密文塊可能達(dá)到目的的攻擊而且克服了只要簡(jiǎn)單調(diào)換密文塊可能達(dá)到目的的攻擊 p缺點(diǎn)是不能實(shí)時(shí)加密,必須等到每缺點(diǎn)是不能實(shí)時(shí)加密,必須等到每8個(gè)字節(jié)都接受到之個(gè)字節(jié)都接受到之后才能開始加密,否則就不能得到正確的結(jié)果。后才能開始加密,否則就不能得到正確的結(jié)果。 KeyEkM1C1EkM2C2EkMmCm輸出反饋模式輸出反饋模式p使用塊加密法為流加密法生成一個(gè)隨機(jī)位使用塊加密法為流加密法生成一個(gè)隨機(jī)位流,密鑰和塊加密法的初始輸入啟動(dòng)加密流,密鑰和塊加密法的初始輸入啟動(dòng)加密過程過程

4、RiEkRi+1KEYMiCiGeneral StructureGeneral Structurep1973年年, Feistel 提出一種乘積加密法,它成提出一種乘積加密法,它成為今天所用的對(duì)稱塊加密法的體系結(jié)構(gòu)基礎(chǔ)為今天所用的對(duì)稱塊加密法的體系結(jié)構(gòu)基礎(chǔ) 處理過程包括多個(gè)階段的替換以及換位處理過程包括多個(gè)階段的替換以及換位. 主密鑰分成一個(gè)子密鑰集,每個(gè)階段使用一個(gè)子主密鑰分成一個(gè)子密鑰集,每個(gè)階段使用一個(gè)子密鑰密鑰. 每個(gè)階段中,數(shù)據(jù)塊分成了左右兩部分,進(jìn)行交每個(gè)階段中,數(shù)據(jù)塊分成了左右兩部分,進(jìn)行交換,其中一個(gè)部分與子密鑰混合,用于該階段換,其中一個(gè)部分與子密鑰混合,用于該階段. 這種類

5、型的加密法又稱為替換這種類型的加密法又稱為替換置換加密法置換加密法. FeistelFeistel Cipher Cipherp其中一個(gè)階段的操作其中一個(gè)階段的操作:Left SideRight SidePlaintextSKeyNew Left SideNew Right SidePermutationSubstitutionF塊加密法評(píng)估塊加密法評(píng)估p任何新的加密法必須安全,能防止被人破解。但隨著加任何新的加密法必須安全,能防止被人破解。但隨著加密法變得越來越復(fù)雜,如何才能確信這些加密法能保護(hù)密法變得越來越復(fù)雜,如何才能確信這些加密法能保護(hù)我們那些有價(jià)值的數(shù)據(jù)呢?我們那些有價(jià)值的數(shù)據(jù)呢?

6、真正答案是我們永遠(yuǎn)無法確保一個(gè)加密法是安全的真正答案是我們永遠(yuǎn)無法確保一個(gè)加密法是安全的. . 要想知道一個(gè)新的加密法是否安全,最好辦法是讓要想知道一個(gè)新的加密法是否安全,最好辦法是讓安全社區(qū)的人去測(cè)試它安全社區(qū)的人去測(cè)試它. . p如果要使一個(gè)加密法讓用戶可接受,那么它必須具有以如果要使一個(gè)加密法讓用戶可接受,那么它必須具有以下特征:下特征: 首先,密鑰必須足夠大,使強(qiáng)力攻擊法無效或至少首先,密鑰必須足夠大,使強(qiáng)力攻擊法無效或至少得不償失得不償失. . Algorithm StrengthAlgorithm Strengthp雪崩條件:任何輸入位或密鑰位與輸出位雪崩條件:任何輸入位或密鑰位與

7、輸出位之間不應(yīng)有任何連續(xù),即密文中不能有內(nèi)之間不應(yīng)有任何連續(xù),即密文中不能有內(nèi)容含有關(guān)于密鑰或明文的提示。容含有關(guān)于密鑰或明文的提示。p如果有人試用不同密鑰,當(dāng)嘗試的密鑰其如果有人試用不同密鑰,當(dāng)嘗試的密鑰其中的某些位接近于實(shí)際的密鑰時(shí),不能有中的某些位接近于實(shí)際的密鑰時(shí),不能有任何信息提示。任何信息提示。p猜測(cè)的密鑰與實(shí)際密鑰即使只有一位之差,猜測(cè)的密鑰與實(shí)際密鑰即使只有一位之差,也應(yīng)產(chǎn)生迥乎不同的密文。也應(yīng)產(chǎn)生迥乎不同的密文。數(shù)據(jù)加密標(biāo)準(zhǔn)數(shù)據(jù)加密標(biāo)準(zhǔn)p2020世紀(jì)世紀(jì)7070年代中期,美國(guó)政府認(rèn)為需要一個(gè)年代中期,美國(guó)政府認(rèn)為需要一個(gè)功能強(qiáng)大的標(biāo)準(zhǔn)加密系統(tǒng)。功能強(qiáng)大的標(biāo)準(zhǔn)加密系統(tǒng)。由美國(guó)標(biāo)

8、準(zhǔn)局提出要求,多家公司提交建議,由美國(guó)標(biāo)準(zhǔn)局提出要求,多家公司提交建議,最后最后IBMIBM的的LuciferLucifer加密系統(tǒng)入選。加密系統(tǒng)入選。19771977年年, , 根據(jù)美國(guó)國(guó)家安全局的建議進(jìn)行修改根據(jù)美國(guó)國(guó)家安全局的建議進(jìn)行修改后,后,Lucifer Lucifer 的方案成為數(shù)據(jù)加密標(biāo)準(zhǔn)(的方案成為數(shù)據(jù)加密標(biāo)準(zhǔn)(DESDES) 后來發(fā)展成為高級(jí)加密標(biāo)準(zhǔn)后來發(fā)展成為高級(jí)加密標(biāo)準(zhǔn) (AES)(AES) Basic StructureBasic StructurepDES 用一個(gè)用一個(gè)64位的密鑰來加密每個(gè)塊長(zhǎng)度為位的密鑰來加密每個(gè)塊長(zhǎng)度為64位的明文位的明文. DES是一個(gè)包含了

9、是一個(gè)包含了16個(gè)階段個(gè)階段的替換的替換置換加密法置換加密法. pDES的密鑰為的密鑰為56位的位的0-1串串 這樣的這樣的0-1串共有串共有 256 種種 (大于大于 1016) 通常以通常以7個(gè)字母的單詞形式出現(xiàn)個(gè)字母的單詞形式出現(xiàn)pDES將將56的的0-1串?dāng)U展為串?dāng)U展為64位位 其中其中 8, 16, 24, 32, 40, 48, 56與與 64 位是添加上去的,位是添加上去的, 每個(gè)每個(gè)8位的密鑰包含了用戶提供的位的密鑰包含了用戶提供的7位和位和DES確定的確定的1位,位,添加的位使得每個(gè)添加的位使得每個(gè)8位的塊都有奇數(shù)個(gè)奇偶校驗(yàn)位(位的塊都有奇數(shù)個(gè)奇偶校驗(yàn)位(1的個(gè)數(shù)為奇數(shù))。的

10、個(gè)數(shù)為奇數(shù))。Key GenerationKey Generation1616個(gè)階段中的每個(gè)階段使用一個(gè)階段中的每個(gè)階段使用一個(gè)個(gè)4848位的密鑰,該密鑰是從最位的密鑰,該密鑰是從最初的初的6464位派生而來。位派生而來。該密鑰要穿過該密鑰要穿過 PC-1 PC-1 塊,塊, PC-PC-1 1 塊負(fù)責(zé)取出由用戶提供的塊負(fù)責(zé)取出由用戶提供的5656位。位。5656位分成左右兩半,每一半都位分成左右兩半,每一半都左移左移1 1或或2 2位(視每個(gè)階段情況位(視每個(gè)階段情況不同)。不同)。 新的新的5656位用位用PC-2PC-2壓縮,拋棄壓縮,拋棄8 8位后,為某個(gè)階段生成一個(gè)位后,為某個(gè)階段生

11、成一個(gè)4848位的密鑰。位的密鑰。64 bit keyPC-128 bit C028 bit D0Left ShiftLeft Shift28 bit C128 bit D1Left ShiftLeft ShiftPC-2K1交換選擇交換選擇pPC-1從密鑰中選取從密鑰中選取56位,按照下列方式重排位,按照下列方式重排 57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 2

12、9 21 13 5 28 20 12 4pPC-2從從56位中選取位中選取48位,按照下列方式重排位,按照下列方式重排 14 17 11 24 1 5 3 28 15 6 21 10 23 19 12 4 26 8 16 7 27 20 13 2 41 52 31 37 47 55 30 40 51 45 33 48 44 49 39 56 34 53 46 42 50 36 29 32DES StagesDES StagespDES 的每個(gè)階段使用的是不同的子密鑰的每個(gè)階段使用的是不同的子密鑰和上一階段的輸出,但執(zhí)行的操作相同和上一階段的輸出,但執(zhí)行的操作相同. 這些操作定義在三種盒中:這些

13、操作定義在三種盒中: 擴(kuò)充盒(擴(kuò)充盒(expansion box ,E盒盒) 替換盒(替換盒( substitution box ,S盒盒) 置換盒(置換盒(the permutation box ,P盒盒). Example StageExample StageE BoxLeft 32 bitsRight 32 bitsKey BoxXOR48 bits48 bits56 bitsKeyS Boxes48 bitsP Box32 bits32 bitsXOR32 bits32 bitsE-Box 將將64位的右邊位的右邊32位的輸入擴(kuò)充為位的輸入擴(kuò)充為48位;位;E-Box的輸出結(jié)果與的輸出

14、結(jié)果與48位的子密鑰進(jìn)行位的子密鑰進(jìn)行XOR邏邏輯運(yùn)算,輸出新的輯運(yùn)算,輸出新的48位,作為位,作為S-Box的輸入;的輸入;S-Box有有8種不同的盒,每個(gè)種不同的盒,每個(gè)S盒接收一個(gè)盒接收一個(gè)6位的位的輸入,輸出一個(gè)輸入,輸出一個(gè)4位的輸出;位的輸出;P-Box 是一個(gè)簡(jiǎn)單的置換;是一個(gè)簡(jiǎn)單的置換;初始左半邊的初始左半邊的32位與位與P盒輸出的盒輸出的32位進(jìn)行位進(jìn)行XOR邏輯運(yùn)算,結(jié)果作為下一輪的右半邊邏輯運(yùn)算,結(jié)果作為下一輪的右半邊32位;位;E-BoxE-BoxpThe EBox expands its 32-bit input into 48-bits by duplicating

15、 some of the input bits. 2829303132124252627282920212223242516171819202112131415161789101112134567893212345EBox12345678910 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32Right 32 bitsS-BoxesS-BoxespS-Boxes 真正體現(xiàn)了真正體現(xiàn)了DES的強(qiáng)大:的強(qiáng)大: S-Boxes一共有一共有8種種 每個(gè)每個(gè)S盒接收一個(gè)盒接收一個(gè)6位的輸入,輸出一個(gè)位的輸入,輸出一個(gè)4位的

16、位的輸出輸出. 每個(gè)每個(gè)S-box 有有16 列,列,4 行行 ,它的每個(gè)元素是,它的每個(gè)元素是一個(gè)一個(gè)4位的塊,通常用十進(jìn)制表示位的塊,通常用十進(jìn)制表示 15 12824917511314 10061341148136211 15 1297310500157414213110612 119538144131215 1183106125907Column0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Row0123Working with the Working with the S-BoxesS-Boxesp一個(gè)一個(gè) S-Box 的的6位輸入包含了行與列的索引位輸入

17、包含了行與列的索引. 行索引由行索引由1,6位給出,列索引由位給出,列索引由2-5位給出位給出. S-Box 的輸出需要查找行的輸出需要查找行-列索引對(duì)應(yīng)的數(shù)值,將該列索引對(duì)應(yīng)的數(shù)值,將該十進(jìn)制數(shù)表示成二進(jìn)制輸出十進(jìn)制數(shù)表示成二進(jìn)制輸出S21381013154211671205149014711 10413158126932531347152814 120110691151518146113497213 1205100 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15012310P-BoxP-Boxp經(jīng)過經(jīng)過 S-Box 操作之后剩下操作之后剩下 32位,按照下位,按照下

18、面的面的P-Box進(jìn)行置換操作進(jìn)行置換操作:2211425191330632273928241451831101152326291228171672021PBox12345678910 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32SBox OutputsFinal StepFinal Stepp最后的操作是將初始右半邊的最后的操作是將初始右半邊的32位作為左半位作為左半邊,而初始左半邊的邊,而初始左半邊的32位與位與P盒的盒的32位進(jìn)行位進(jìn)行XOR邏輯運(yùn)算,并將結(jié)果作為右半邊的邏輯運(yùn)算,并將結(jié)果作為右半邊的3

19、2位。位。p該過程進(jìn)行該過程進(jìn)行16輪,每輪使用不用的子密鑰輪,每輪使用不用的子密鑰p將將DES一個(gè)階段的輸入和輸出做一個(gè)對(duì)比,一個(gè)階段的輸入和輸出做一個(gè)對(duì)比,兩個(gè)位串有約多于一半的位發(fā)生了變化。兩個(gè)位串有約多于一半的位發(fā)生了變化。p11001100 11001100 11001100 11001100 01010101 01010101 01010101 01010101p01010101 01010101 01010101 01010101 10100001 00101110 10111101 01110001Using CAPUsing CAPpCAP provides an imple

20、mentation of DESS-DESS-DESpS-DES (Simplified-DES) was developed by Dr. Edward Schaefer at Santa Clara University in 1996. It is simple enough so that you can explore the operation of DES and some of its weaknesses. It operates on 8-bit data blocks (in other words, single characters) using a 10-bit k

21、ey (only 210 = 1024 possibilities) and two stages pIn spite of the simplifications, S-DES looks much like our basic DES. 8 bitsPlaintext blockIPL0R0XORFL1R1XORFL2R28 bitsIP-1Ciphertext block10 bit keyPC-1C0D0Left Shift 1 bitLeft Shift 1 bitC1D1Left Shift 2 bitsLeft Shift 2 bitsC2D2PC-2PC-2K1K21 2 3

22、4 5 6 7 82 6 3 1 4 8 5 71 2 3 4 5 6 7 84 1 3 5 7 2 8 6S-DES S-BoxesS-DES S-BoxespThe function F on the prior slide contains an EBox, PBox and 2 SBoxes (much like DES)pThe two S-Boxes are given by:S-DES Key GenerationS-DES Key GenerationpThe key generation mechanism begins with a 10-bit key which is permuted by PC-1 into the order 3 5 2 7 4 10 1 9 8 6. pIt is separated into 2 five bit segments and each se

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論