信息安全基礎(chǔ)4_第1頁
信息安全基礎(chǔ)4_第2頁
信息安全基礎(chǔ)4_第3頁
信息安全基礎(chǔ)4_第4頁
信息安全基礎(chǔ)4_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、4 對稱密鑰算法4.1 概述概述4.2 數(shù)據(jù)加密標(biāo)準(zhǔn)算法數(shù)據(jù)加密標(biāo)準(zhǔn)算法DES4.3 高級數(shù)據(jù)加密標(biāo)準(zhǔn)高級數(shù)據(jù)加密標(biāo)準(zhǔn)AES4.4 聯(lián)合分組密碼聯(lián)合分組密碼4.1 概述n分組密碼:向量分組密碼:向量x到向量到向量y上的一個(gè)映射上的一個(gè)映射 :x xy y= = (x)x=(x0,x1,xN-1), y=(y0,y1,yN-1)n乘積密碼:乘積密碼:t個(gè)函數(shù)(密碼)個(gè)函數(shù)(密碼)F1,Ft的復(fù)合,其中的復(fù)合,其中每個(gè)每個(gè)Fi是一個(gè)換位或代替。如轉(zhuǎn)輪機(jī)。是一個(gè)換位或代替。如轉(zhuǎn)輪機(jī)。nLucifer密碼的代替密碼的代替-移位變換移位變換n乘積密碼:代替和簡單線性變換來實(shí)現(xiàn)混合變換。乘積密碼:代替和簡

2、單線性變換來實(shí)現(xiàn)混合變換。n例:例:ADFGVX乘積密碼乘積密碼1. 先造一個(gè)先造一個(gè)6*6方陣方陣 A D F G V X A K 2 W R 1 F D 9 B 6 C L 5 F Q 7 J P G X G E V Y 3 A N V 8 O D H 0 2 X U 4 I S T M n明文:明文:P R O D U C T C I P H E R Sn變換(代替):(變換(代替):(行標(biāo),列標(biāo))行標(biāo),列標(biāo)) 明文明文 P FG (把原來明文的一個(gè)字母用(把原來明文的一個(gè)字母用 R AG 兩個(gè)字母行、列來代替)兩個(gè)字母行、列來代替)n第一次加密密文:第一次加密密文:FG AG VD V

3、F XA DG XV DG XF FG VG GA AG XG2. 移位變換:構(gòu)造一個(gè)移位矩陣移位變換:構(gòu)造一個(gè)移位矩陣, 約定一個(gè)密鑰約定一個(gè)密鑰n密鑰:密鑰:DEUTSCHn把第一次加密的密文按行寫入把第一次加密的密文按行寫入4*7矩陣,前邊加上密鑰,密鑰字母按其在字矩陣,前邊加上密鑰,密鑰字母按其在字母表中出現(xiàn)的次序編號。母表中出現(xiàn)的次序編號。 D E U T S C H 2 3 7 6 5 1 4 F G A G V D V F X A D G X V D G X F F G V G G A A G X Gn第二次加密(移位法):按密鑰字母在字母表中的順序一列一列寫出。第二次加密(移位

4、法):按密鑰字母在字母表中的順序一列一列寫出。n密文:密文:DXGX FFDG GXGG VVVG VGFG GDFA AAXA 4.2 數(shù)據(jù)加密標(biāo)準(zhǔn)算法DESn背景背景n算法描述算法描述n算法概述:算法概述:Li=Ri-1Ri=Li-1 f(Ri-1, Ki)明 文IP變換L0R0+fL1=R0R1=L0 f(R0, K1)L15=R14f+K1R16=L15 f(R15,K16)R15=L14 f(R14,K15)L16=R15K16IP-1變換密 文+f+K2Li=Ri-1Ri=Li-1 f(Ri-1,Ki)+f+Ki+1nF函數(shù):函數(shù):nE變換變換n按位異或按位異或nS盒代替盒代替nP

5、變換變換Li-1Ri-1E變換S盒代替P變換LiRi密鑰移位移位壓縮變換密鑰密鑰PC-1C0D0循環(huán)左移循環(huán)左移C1D1PC-2循環(huán)左移循環(huán)左移C2D2PC-2PC-2循環(huán)左移循環(huán)左移C16D16K1K2K16密鑰變換:n初始變換初始變換IP:在第一圈之前(對明文移位):在第一圈之前(對明文移位)n密鑰變換:密鑰變換:nPC-1:64位密鑰去掉位密鑰去掉8的倍數(shù)位的倍數(shù)位n循環(huán)左移:循環(huán)左移:56位分成各位分成各28位的兩部分,分別循環(huán)左移位的兩部分,分別循環(huán)左移1或或2位位nPC-2:從:從56位中選出位中選出48位,為本圈子密鑰位,為本圈子密鑰n擴(kuò)展變換擴(kuò)展變換E:將右半部分從:將右半部分

6、從32位擴(kuò)展到位擴(kuò)展到48位位nS盒代替:對盒代替:對48位中間結(jié)果做代替操作。位中間結(jié)果做代替操作。n8個(gè)小個(gè)小S盒,每個(gè)有盒,每個(gè)有6位輸入和位輸入和4位輸出位輸出n設(shè)輸入設(shè)輸入為為b1b2b3b4b5b6,則,則b1b6為行號,為行號,b2b3b4b5為列號為列號n例:例:S6的輸入的輸入110011,行,行11(3),列),列1001(9)處為)處為14,輸出為,輸出為1110nP變換:換位操作,變換:換位操作,P變換的結(jié)果與上一圈的左半變換的結(jié)果與上一圈的左半部分異或,成為新的右半部分,開始下一圈部分異或,成為新的右半部分,開始下一圈n逆初始變換逆初始變換IP-1(移位)(移位)舉例

7、:設(shè)M = 0 x0123456789abcdef, K = 0 xfedcba9876543210, 求L1和R1。K: 1111111011011100101110101001100001110110010101000011001000010000 64位PC-1(K): 00001111001100110101010111110101010100110011000011111111 表4.2 56位循環(huán)左移: 00011110011001101010101111101010101001100110000111111110 56位K1(PC-2): 11110100111111011001

8、1000011001001011011001011010 表4.4 48位M: 0000000100100011010001010110011110001001101010111100110111101111IP(M): 1100110000000000110011001111111111110000101010101111000010101010E(R0) 011110100001010101010101011110100001010101010101E(R0) K1 100011101110100011001101000111101010001100001111S盒代替: 11000001

9、101000001100100010000100P變換: 00010001100001001100000100100101R1: 11011101100001000000110111011010L1:n加密過程:加密過程:L0R0IP()FOR i=1 TO 16Li Ri-1Ri Li-1 f(Ri-1,Ki) IP-1(R16L16)n解密過程:解密過程:R16L16 IP()FOR i=16 TO 1Ri-1 LiLi-1 Ri f(Li,Ki) IP-1(L0R0)nDES的安全性的安全性n弱密鑰弱密鑰n弱密鑰:每一圈的子密鑰都相同。共弱密鑰:每一圈的子密鑰都相同。共4個(gè)。個(gè)。n半弱密

10、鑰:只產(chǎn)生半弱密鑰:只產(chǎn)生2種不同的子密鑰,每種出現(xiàn)種不同的子密鑰,每種出現(xiàn)8次。共次。共12個(gè)。個(gè)。n可能弱密鑰:只產(chǎn)生可能弱密鑰:只產(chǎn)生4種不同的子密鑰,每種出現(xiàn)種不同的子密鑰,每種出現(xiàn)4次。共次。共48個(gè)。個(gè)。n互補(bǔ)密鑰互補(bǔ)密鑰n代數(shù)結(jié)構(gòu)代數(shù)結(jié)構(gòu)n密鑰長度密鑰長度n圈數(shù)圈數(shù)nS盒的設(shè)計(jì)盒的設(shè)計(jì)練習(xí)n1.已知已知DES算法中算法中S盒的輸入為盒的輸入為0 x010101010102,求經(jīng)過,求經(jīng)過S盒代替后的輸出結(jié)果。盒代替后的輸出結(jié)果。n答案:答案:1110 1001 1001 1101 0010 0000 0010 0010n輸入輸入: 000000 010000 000100 000

11、001 000000 010000 000100 000010S1:0行行0列:列:141110S2:0行行8列:列:91001S3:0行行2列:列:91001S4:1行行0列:列:131101S5:0行行0列:列:20010S6:0行行8列:列:00000S7:0行行2列:列:20010S8:0行行1列:列:200104.3 高級數(shù)據(jù)加密標(biāo)準(zhǔn)AESn背景背景nAES的數(shù)學(xué)基礎(chǔ)的數(shù)學(xué)基礎(chǔ)nAES加密算法描述加密算法描述nAES解密算法解密算法n算法評價(jià)算法評價(jià)n結(jié)論結(jié)論背景n現(xiàn)代計(jì)算機(jī)速度的迅速提高,使得只有現(xiàn)代計(jì)算機(jī)速度的迅速提高,使得只有56bit密鑰的密鑰的DES算法的安全性面臨著極大的

12、挑戰(zhàn)。算法的安全性面臨著極大的挑戰(zhàn)。n1997年,年,NIST公開征求公開征求AES(Advanced Encryption Standard)作為)作為2001年以后的數(shù)據(jù)加密標(biāo)準(zhǔn)。年以后的數(shù)據(jù)加密標(biāo)準(zhǔn)。n1998年年8月,月,AES召開第一次候選會,確定召開第一次候選會,確定15個(gè)算法入圍。個(gè)算法入圍。n1999年年3月,月, AES召開第二次候選會,有召開第二次候選會,有5個(gè)算法入圍個(gè)算法入圍(MARS, RC6, Rijndael, Serpent和和Twofish)。)。n2000年年10月,月,NIST選出由比利時(shí)的選出由比利時(shí)的Joan Daemen和和Vincent Rijme

13、n提交的提交的Rijndael算法作為算法作為AES。n2001年夏天,年夏天,NIST頒布新的信息處理標(biāo)準(zhǔn)頒布新的信息處理標(biāo)準(zhǔn)(FIPS),將),將Rijndael算法作為算法作為AES。AES的數(shù)學(xué)基礎(chǔ)(1)n有限域有限域GF(28)上定義了上定義了4種運(yùn)算:種運(yùn)算:“+”、 “”、 “ X”和和帶系數(shù)的多項(xiàng)式乘運(yùn)算帶系數(shù)的多項(xiàng)式乘運(yùn)算“ ”。n對字節(jié)對字節(jié)b,用多項(xiàng)式表示為:,用多項(xiàng)式表示為: b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+b1x+b0n“+”運(yùn)算:兩個(gè)字節(jié)相加,相當(dāng)于字節(jié)的每一位簡單異或。運(yùn)算:兩個(gè)字節(jié)相加,相當(dāng)于字節(jié)的每一位簡單異或。n例:例:5783d

14、4(57)16=(01010111)2x6+x4+x2+x+1(83)16=(10000011)2 x7+x+15783 (x6+x4+x2+x+1)+(x7+x+1)= x7 +x6+x4+x2 (11010100)2 (d4)16AES的數(shù)學(xué)基礎(chǔ)(2)n“”運(yùn)算:選擇一個(gè)不可約多項(xiàng)式:運(yùn)算:選擇一個(gè)不可約多項(xiàng)式:m(x)= x8+x4+x3+x+1, “”運(yùn)算為兩多項(xiàng)式相乘后進(jìn)行運(yùn)算為兩多項(xiàng)式相乘后進(jìn)行模模m(x)的運(yùn)算。的運(yùn)算。n例:例:57 83c1(57)16=(01010111)2x6+x4+x2+x+1(83)16=(10000011)2 x7+x+157 83 (x6+x4+x

15、2+x+1) (x7+x+1) mod (x8+x4+x3+x+1)= x13 + x11 + x9 + x8 + x7 + x7 + x5+x3+x2+ x + x6 + x4+x2+x+1) mod (x8+x4+x3+x+1) =(x13 + x11 + x9 + x8 + x6 + x5+x4+x3+1) mod (x8+x4+x3+x+1) x7+ x6 +1 (11000001)2 (c1)16(x13 + x11 + x9 + x8 + x6 + x5+x4+x3+1) mod(x8+x4+x3+x+1) :x5 + x3x8+x4+x3+x+1x13 + x11 + x9 +

16、x8 + x6 + x5+x4+x3+1x13 + x9 + x8 + x6 + x5x7+ x6 +1x11 + x4+x3+1x11 + x7+ x6+ x4+x3AES的數(shù)學(xué)基礎(chǔ)(3)n“ X”運(yùn)算:運(yùn)算: b X = b7x8+b6x7+b5x6+b4x5+b3x4+b2x3+b1x2+b0 xn求乘法逆元:因?yàn)榍蟪朔嬖阂驗(yàn)閙(x)是是GF(28)上的不可約多項(xiàng)式,所上的不可約多項(xiàng)式,所以對于任意以對于任意b(x),都可以用擴(kuò)展的,都可以用擴(kuò)展的Euclid算法求算法求a(x),使,使得得 a(x) b(x)+c(x) m(x)=1 因而因而 a(x) b(x) mod m(x)

17、=1 即即 b1(x) mod m(x) = a(x) , m(x) = x8+x4+x3+x+1例:求(x7+ x6 +1)關(guān)于模m(x)x8+x4+x3+x+1的乘法逆元。輾轉(zhuǎn)相除:輾轉(zhuǎn)相除: x8+x4+x3+x+1 (x 7+ x 6 +1)(x +1)+ (x 6+ x 4 + x 3) x 7+ x 6 +1= (x 6+ x 4 + x 3)(x +1)+(x 5+ x 3 +1)x 6+ x 4 + x 3 = (x 5+ x 3 +1) x +(x 3+ x)x 5+ x 3 +1 = (x 3+ x) x 2 +1擴(kuò)展的擴(kuò)展的Euclid算法:算法: 1= (x 5+ x

18、3 +1) (x 3+ x) x 2 (x 5+ x 3 +1) (x 6+ x 4 + x 3 )+ (x 5+ x 3+1) x ) x 2 = (x 5+ x 3 +1) (1+ x 3)+ (x 6+ x 4 + x 3 ) x 2 = (x 7+ x 6 +1)+ (x 6+ x 4 + x 3)(x +1) (1+ x 3) + (x 6+ x 4 + x 3 ) x 2 = (x 7+ x 6 +1) (1+ x 3)+ (x 6+ x 4 + x 3 )(x 4 + x 3 + x 2 + x +1 ) = (x 7+ x 6 +1) (1+ x 3)+ (x 8+ x 4+

19、x 3+ x +1)+(x 7+ x 6 +1)(x +1) (x 4+ x 3 + x 2 + x +1 ) = (x 7+ x 6 +1)(x 5+ x 3 ) + (x 8+ x 4+ x 3+ x +1) (x 4 + x 3 + x 2 + x +1 ) 因此,因此, (x 7+ x 6 +1)1 mod (x 8+ x 4+ x 3+ x +1) x 5+ x 3 AES的數(shù)學(xué)基礎(chǔ)(4)n帶系數(shù)的多項(xiàng)式乘運(yùn)算帶系數(shù)的多項(xiàng)式乘運(yùn)算“ ”:令令a(x)= a3x3+a2x2+a1x+a0, b(x)= b3x3+b2x2+b1x+b0, 其乘積其乘積 c(x)=a(x)b(x)= c6

20、x6+c5x5+c4x4+c3x3+c2x2+c1x+c0其中,其中, c0 = a0 b0 c1=a1 b0 a0 b1 c2=a2 b0 a1 b1 a0 b2 c3=a3 b0 a2 b1 a1 b2 a0 b3 c4=a3 b1 a2 b2 a1 b3 c5=a3 b2 a2 b3 c6 = a3 b3對(對(x4+1)取模得)取模得d(x): d(x)=a(x) b(x)= d3x3+d2x2+d1x+d0其中,其中,d0 = a0 b0 a3 b1 a2 b2 a1 b3 d1 = a1 b0 a0 b1 a3 b2 a2 b3 d2 = a2 b0 a1 b1 a0 b2 a3

21、b3 d3 = a3 b0 a2 b1 a1 b2 a0 b3注意:注意: xi mod (x4+1) = xi mod 4AES加密算法描述n加密算法概述加密算法概述n一圈變換一圈變換n密鑰擴(kuò)展密鑰擴(kuò)展n加密算法描述加密算法描述加密算法概述(1)nAES算法與以往的基于算法與以往的基于Feistel網(wǎng)的密碼(如網(wǎng)的密碼(如DES)不同,)不同,算法的每一步都是可逆的。算法的每一步都是可逆的。n算法的明文塊長可以為算法的明文塊長可以為128bit,192bit或或256bit,密鑰也,密鑰也可以分別為可以分別為128bit,192bit或或256bit。n算法有多圈相同的運(yùn)算,每一圈包括算法有

22、多圈相同的運(yùn)算,每一圈包括4個(gè)步驟:個(gè)步驟:n非線性代替(非線性代替(S-盒)盒)n行循環(huán)左移(行循環(huán)左移(ShiftRow)n列混合變換列混合變換(MixColum)n與擴(kuò)展密鑰相異或與擴(kuò)展密鑰相異或n每一圈的子密鑰從擴(kuò)展密鑰中取出每一圈的子密鑰從擴(kuò)展密鑰中取出n密鑰擴(kuò)展過程同時(shí)應(yīng)用了非線性變換和循環(huán)左移密鑰擴(kuò)展過程同時(shí)應(yīng)用了非線性變換和循環(huán)左移n算法定義的所有運(yùn)算都是在有限域算法定義的所有運(yùn)算都是在有限域GF(28)上進(jìn)行的上進(jìn)行的加密算法概述(2)n算法中進(jìn)行運(yùn)算的單位包括:算法中進(jìn)行運(yùn)算的單位包括:n1個(gè)字節(jié)個(gè)字節(jié)n1列列n1行行n用字節(jié)數(shù)組表示的整個(gè)加密塊用字節(jié)數(shù)組表示的整個(gè)加密塊n

23、加密塊數(shù)組中,加密塊數(shù)組中,n可以是可以是3,5,7,所代表的加密塊分別表示,所代表的加密塊分別表示128bit,192bit和和256bit。ai,ja0,ja1,ja2,ja3,jai,0ai,1ai,3a0,2a0,3a1,2a1,3a2,2a2,3a0,0a0,1a1,0a1,1a2,0a2,1a3,0a3,1a3,2a3,3a0,na1,na2,na3,n加密算法概述(3)n令令Nr代表算法的圈數(shù),代表算法的圈數(shù),Nk代表密鑰長度代表密鑰長度/32,Nb代表塊長度代表塊長度/32,則算,則算法的圈數(shù)法的圈數(shù)Nr的取值與的取值與Nk和和Nb的關(guān)系為:的關(guān)系為:n除最后一圈不做列混合除最

24、后一圈不做列混合變換外,每一圈都經(jīng)過變換外,每一圈都經(jīng)過4步相同的操作:步相同的操作:NrNb4Nb6Nb8Nk4101214Nk6121214Nk8141414Round(State, RoundKey) ByteSub(State);/S-盒 ShiftRow(State);/行循環(huán)左移 MixColumn(State);/列混合變換 AddRoundKey(State, RoundKey); /與擴(kuò)展密鑰相異或一圈變換(1)n非線性代替(非線性代替(S-盒):包括盒):包括2步步n在在GF(28)上求每個(gè)字節(jié)關(guān)于模上求每個(gè)字節(jié)關(guān)于模m(x)的乘法逆元素,的乘法逆元素,00的逆元的逆元定義

25、為定義為00;(000110001163, 01011111007c)n應(yīng)用應(yīng)用GF(2)上的一個(gè)仿射變換:上的一個(gè)仿射變換:一圈變換(2)n每個(gè)字節(jié)每個(gè)字節(jié)aij經(jīng)過以上經(jīng)過以上2步變換后,記為步變換后,記為bij。n可以將每個(gè)可能的可以將每個(gè)可能的aij值對應(yīng)的值對應(yīng)的bij值制成表格,通過查值制成表格,通過查表的方式來實(shí)現(xiàn)表的方式來實(shí)現(xiàn)S-盒代替,見下表。其中盒代替,見下表。其中xy代表代表1個(gè)字節(jié)的個(gè)字節(jié)的16進(jìn)制表示。進(jìn)制表示。一圈變換(3)n行循環(huán)左移(行循環(huán)左移(ShiftRow):每一):每一行以字節(jié)為單位循環(huán)左移,左移行以字節(jié)為單位循環(huán)左移,左移的字節(jié)數(shù)見右表。因此,第的字節(jié)

26、數(shù)見右表。因此,第1行行不移位,第不移位,第2行左移行左移1個(gè)字節(jié)個(gè)字節(jié)n列混合變換(列混合變換(Mixcolumn):對):對每一列中每個(gè)字節(jié)每一列中每個(gè)字節(jié)a(x),令,令b(x)=c(x) a(x),其中,其中c(x)為:為:c(x)=03x3+01x2+01x+02n與擴(kuò)展密鑰相異或:與擴(kuò)展密鑰相異或:aij kijbijNbC0C1C2C3401236012380134一圈變換(4)n一圈結(jié)構(gòu)圖:一圈結(jié)構(gòu)圖:Step1. ByteSub(State)Step2. ShiftRow(State)Step3. MixColumn(State)Step4. AddRoundKey(Stat

27、e, RoundKey)StateS-盒行循環(huán)左移c(x)AARoundKeyRound(State, RoundKey)密鑰擴(kuò)展(1)n擴(kuò)展密鑰是一個(gè)以擴(kuò)展密鑰是一個(gè)以4字節(jié)大小為單位字節(jié)大小為單位(用用Word表示表示)的線性的線性數(shù)組。當(dāng)數(shù)組。當(dāng)Nk大于大于6的時(shí)候有一點(diǎn)不同。開始的時(shí)候有一點(diǎn)不同。開始Nk個(gè)個(gè)Word是是加密用的密鑰,以后每個(gè)加密用的密鑰,以后每個(gè)Word通過對通過對K實(shí)行變換得到。實(shí)行變換得到。n當(dāng)當(dāng)Nk6時(shí),時(shí),若若Nk mod i 0,則,則Wordi = Wordi-1 Wordi-Nk ;(i不能被不能被Nk整除)整除)若若Nk mod i0,則先循環(huán)左移,然

28、后查非線性變換表(,則先循環(huán)左移,然后查非線性變換表(S-盒),盒),之后再與常量之后再與常量Rconi/Nk異或,其中:異或,其中:Rconi=(RCi,00,00,00),RC1=1,RCi=x(RCi-1)=x(i-1)。最后,與。最后,與Wordi-Nk異或。異或。n當(dāng)當(dāng)Nk8時(shí),若時(shí),若i mod Nk = 4,則先查非線性變換表,再,則先查非線性變換表,再與與Wordi-Nk異或。異或。密鑰擴(kuò)展的偽代碼: KeyExpansion(byte key4 * Nk, word wNb * (Nr + 1), Nk)for (i=0 ;i Nk;i+)wi = wordkey4*i,ke

29、y4*i+1,key4*i+2,key4*i+3;for (i = Nk ;i Nb * (Nr + 1); i+)word temp = wi - 1;if (i % Nk = 0)temp = SubWord(RotWord(temp) Rconi / Nk;else if (Nk = 8 and i % Nk = 4)temp = SubWord(temp); S盒盒wi = wi - Nk temp; 異或異或密鑰擴(kuò)展(2)n可以從擴(kuò)展密鑰中選擇可以從擴(kuò)展密鑰中選擇Round key,例如:當(dāng),例如:當(dāng)Nb6,Nk4時(shí),擴(kuò)展密鑰和各圈子密鑰的選擇如下:時(shí),擴(kuò)展密鑰和各圈子密鑰的選擇如下

30、:加密算法描述n整個(gè)算法可以用整個(gè)算法可以用 下面的代碼表示:下面的代碼表示:Rijndael(State, CipherKey)KeyExpansion(CipherKey, ExpandedKey); /擴(kuò)展密鑰擴(kuò)展密鑰AddRoundKey(State, ExpandedKey); /與擴(kuò)展密鑰異或與擴(kuò)展密鑰異或for ( i=1; iNr; i+)Round(State, ExpandedKey+Nb*i);每一圈每一圈FinalRound(State, ExpandedKey+Nb*Nr); /最后一圈不做列混合變最后一圈不做列混合變換換AES解密算法(1)n由于由于Rijndael

31、算法的每一步都是可逆的算法的每一步都是可逆的 ,因此一,因此一圈的逆過程如下:圈的逆過程如下:InvRound(State, RoundKey) AddRoundKey(State, RoundKey); InvMixColumn(State); InvShiftRow(State); InvByteSub(State);AES解密算法(2)n列混合變換的逆變換列混合變換的逆變換InvMixColumn: s(x)=c-1(x) s(x) 對于對于0cNb,有,有n循環(huán)左移的逆變換為循環(huán)右移相應(yīng)的字節(jié)數(shù)循環(huán)左移的逆變換為循環(huán)右移相應(yīng)的字節(jié)數(shù)AES解密算法(3)n逆逆S-盒:盒: 先做逆仿射變換

32、,然后先做逆仿射變換,然后求求GF(28)上模上模m(x)的乘法逆元,也可以做成的乘法逆元,也可以做成一個(gè)查找表(逆一個(gè)查找表(逆S-盒)。盒)。算法評價(jià)(1)n所有的運(yùn)算定義在有限所有的運(yùn)算定義在有限域域GF(28)上,算法執(zhí)行時(shí)除了一上,算法執(zhí)行時(shí)除了一個(gè)查表操作外,其它的運(yùn)算都是簡單的異或和移位,運(yùn)個(gè)查表操作外,其它的運(yùn)算都是簡單的異或和移位,運(yùn)行速度很快。在每一圈運(yùn)算和密鑰擴(kuò)展中都應(yīng)用了非線行速度很快。在每一圈運(yùn)算和密鑰擴(kuò)展中都應(yīng)用了非線性操作,大大增強(qiáng)了抗差分和線性密碼分析能力。性操作,大大增強(qiáng)了抗差分和線性密碼分析能力。n輪運(yùn)算:輪運(yùn)算:(1)所有操作都是可逆的;)所有操作都是可逆的;(2)每一步對一定攻擊都有很強(qiáng)的抵抗能力,)每一步對一定攻擊都有很強(qiáng)的抵抗能力,S-盒能抵盒能抵抗差分和線性密碼分析,行循環(huán)左移能抵抗截?cái)嗖罘挚共罘趾途€性密碼分析,行循環(huán)左移能抵抗截?cái)嗖罘置艽a分析及密碼分析及Square攻擊,列混合達(dá)到了擴(kuò)散的目的;攻擊,列混合達(dá)到了擴(kuò)散的目的;(3)能在廣泛的硬件平臺上高效快速地執(zhí)行;)能在廣泛的

溫馨提示

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

評論

0/150

提交評論