版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
4對稱密鑰算法4.1概述4.2數(shù)據(jù)加密標(biāo)準(zhǔn)算法DES4.3高級數(shù)據(jù)加密標(biāo)準(zhǔn)AES4.4聯(lián)合分組密碼4.1概述分組密碼:向量x到向量y上的一個映射
:x→y=
(x)x=(x0,x1,…,xN-1),y=(y0,y1,…,yN-1)乘積密碼:t個函數(shù)(密碼)F1,…,Ft的復(fù)合,其中每個Fi是一個換位或代替。如轉(zhuǎn)輪機(jī)。Lucifer密碼的代替-移位變換乘積密碼:代替和簡單線性變換來實現(xiàn)混合變換。例:ADFGVX乘積密碼1.先造一個6*6方陣ADFGVXAK2WR1FD9B6CL5FQ7JPGXGEVY3ANV8ODH02XU4ISTM明文:PRODUCTCIPHERS變換(代替):(行標(biāo),列標(biāo))明文PFG(把原來明文的一個字母用RAG兩個字母行、列來代替)第一次加密密文:FGAGVDVFXADGXVDGXFFGVGGAAGXG2.移位變換:構(gòu)造一個移位矩陣,約定一個密鑰密鑰:DEUTSCH把第一次加密的密文按行寫入4*7矩陣,前邊加上密鑰,密鑰字母按其在字母表中出現(xiàn)的次序編號。DEUTSCH2376514FGAGVDVFXADGXVDGXFFGVGGAAGXG第二次加密(移位法):按密鑰字母在字母表中的順序一列一列寫出。密文:DXGXFFDGGXGGVVVGVGFGGDFAAAXA4.2數(shù)據(jù)加密標(biāo)準(zhǔn)算法DES背景算法描述算法概述:Li=Ri-1Ri=Li-1⊕f(Ri-1,Ki)F函數(shù):E變換按位異或S盒代替P變換密鑰PC-1C0D0循環(huán)左移循環(huán)左移C1D1PC-2循環(huán)左移循環(huán)左移C2D2PC-2PC-2循環(huán)左移循環(huán)左移C16D16……K1K2K16密鑰變換:初始變換IP:在第一圈之前(對明文移位)密鑰變換:PC-1:64位密鑰去掉8的倍數(shù)位循環(huán)左移:56位分成各28位的兩部分,分別循環(huán)左移1或2位PC-2:從56位中選出48位,為本圈子密鑰擴(kuò)展變換E:將右半部分從32位擴(kuò)展到48位S盒代替:對48位中間結(jié)果做代替操作。8個小S盒,每個有6位輸入和4位輸出設(shè)輸入為b1b2b3b4b5b6,則b1b6為行號,b2b3b4b5為列號例:S6的輸入110011,行11(3),列1001(9)處為14,輸出為1110P變換:換位操作,P變換的結(jié)果與上一圈的左半部分異或,成為新的右半部分,開始下一圈逆初始變換IP-1(移位)舉例:設(shè)M=0x0123456789abcdef,K=0xfedcba9876543210,求L1和R1。K:111111101101110010111010100110000111011001010100001100100001000064位PC-1(K):00001111001100110101010111110101010100110011000011111111表4.256位循環(huán)左移:0001111001100110101010111110101010100110011000011111111056位K1(PC-2):111101001111110110011000011001001011011001011010表4.448位M:0000000100100011010001010110011110001001101010111100110111101111IP(M):1100110000000000110011001111111111110000101010101111000010101010E(R0)011110100001010101010101011110100001010101010101E(R0)⊕K1
100011101110100011001101000111101010001100001111S盒代替:11000001101000001100100010000100P變換:00010001100001001100000100100101R1:11011101100001000000110111011010L1:加密過程:L0R0
IP(<64位明文>)FORi=1TO16Li
Ri-1Ri
Li-1⊕f(Ri-1,Ki)<64位密文>
IP-1(R16L16)解密過程:R16L16
IP(<64位密文>)FORi=16TO1Ri-1
LiLi-1
Ri
⊕f(Li,Ki)<64位明文>
IP-1(L0R0)DES的安全性弱密鑰弱密鑰:每一圈的子密鑰都相同。共4個。半弱密鑰:只產(chǎn)生2種不同的子密鑰,每種出現(xiàn)8次。共12個??赡苋趺荑€:只產(chǎn)生4種不同的子密鑰,每種出現(xiàn)4次。共48個?;パa(bǔ)密鑰代數(shù)結(jié)構(gòu)密鑰長度圈數(shù)S盒的設(shè)計練習(xí)1.已知DES算法中S盒的輸入為0x010101010102,求經(jīng)過S盒代替后的輸出結(jié)果。答案:11101001100111010010000000100010輸入:000000010000000100000001000000010000000100000010S1:0行0列:14--1110S2:0行8列:9--1001S3:0行2列:9--1001S4:1行0列:13--1101S5:0行0列:2--0010S6:0行8列:0--0000S7:0行2列:2--0010S8:0行1列:2--00104.3高級數(shù)據(jù)加密標(biāo)準(zhǔn)AES背景AES的數(shù)學(xué)基礎(chǔ)AES加密算法描述AES解密算法算法評價結(jié)論背景現(xiàn)代計算機(jī)速度的迅速提高,使得只有56bit密鑰的DES算法的安全性面臨著極大的挑戰(zhàn)。1997年,NIST公開征求AES(AdvancedEncryptionStandard)作為2001年以后的數(shù)據(jù)加密標(biāo)準(zhǔn)。1998年8月,AES召開第一次候選會,確定15個算法入圍。1999年3月,AES召開第二次候選會,有5個算法入圍(MARS,RC6,Rijndael,Serpent和Twofish)。2000年10月,NIST選出由比利時的JoanDaemen和VincentRijmen提交的Rijndael算法作為AES。2001年夏天,NIST頒布新的信息處理標(biāo)準(zhǔn)(FIPS),將Rijndael算法作為AES。AES的數(shù)學(xué)基礎(chǔ)(1)有限域GF(28)上定義了4種運算:“+”、“·”、“·
X”和帶系數(shù)的多項式乘運算“
”。對字節(jié)b,用多項式表示為:
b7x7+b6x6+b5x5+b4x4+b3x3+b2x2+b1x+b0“+”運算:兩個字節(jié)相加,相當(dāng)于字節(jié)的每一位簡單異或。例:’57’+’83’=‘d4’(57)16=(01010111)2→x6+x4+x2+x+1(83)16=(10000011)2→x7+x+1’57’+’83’→(x6+x4+x2+x+1)+(x7+x+1)=x7+x6+x4+x2→(11010100)2=(d4)16AES的數(shù)學(xué)基礎(chǔ)(2)“·”運算:選擇一個不可約多項式:m(x)=x8+x4+x3+x+1,“·”運算為兩多項式相乘后進(jìn)行模m(x)的運算。例:’57’·’83’=‘c1’(57)16=(01010111)2→x6+x4+x2+x+1(83)16=(10000011)2→x7+x+1’57’·’83’→(x6+x4+x2+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+x8+x6+x5+x4+x3+1x13+x9+x8+x6+x5x7+x6+1x11+x4+x3+1x11+x7+x6+
x4+x3AES的數(shù)學(xué)基礎(chǔ)(3)“·
X”運算:
b
·
X=b7x8+b6x7+b5x6+b4x5+b3x4+b2x3+b1x2+b0x求乘法逆元:因為m(x)是GF(28)上的不可約多項式,所以對于任意b(x),都可以用擴(kuò)展的Euclid算法求a(x),使得
a(x)·
b(x)+c(x)·
m(x)=1因而a(x)·
b(x)modm(x)=1即b-1(x)modm(x)=a(x),m(x)=x8+x4+x3+x+1例:求(x7+x6+1)關(guān)于模m(x)=x8+x4+x3+x+1的乘法逆元。輾轉(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+x3)(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ò)展的Euclid算法:1=(x
5+x
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+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)-1mod(x
8+x
4+x
3+x+1)=x
5+x
3
AES的數(shù)學(xué)基礎(chǔ)(4)帶系數(shù)的多項式乘運算“
”:令a(x)=a3x3+a2x2+a1x+a0,b(x)=b3x3+b2x2+b1x+b0,其乘積
c(x)=a(x)·b(x)=c6x6+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
·b3
d3=a3·b0
a2
·b1
a1
·b2
a0
·b3注意:ximod(x4+1)=ximod4AES加密算法描述加密算法概述一圈變換密鑰擴(kuò)展加密算法描述加密算法概述(1)AES算法與以往的基于Feistel網(wǎng)的密碼(如DES)不同,算法的每一步都是可逆的。算法的明文塊長可以為128bit,192bit或256bit,密鑰也可以分別為128bit,192bit或256bit。算法有多圈相同的運算,每一圈包括4個步驟:非線性代替(S-盒)行循環(huán)左移(ShiftRow)列混合變換(MixColum)與擴(kuò)展密鑰相異或每一圈的子密鑰從擴(kuò)展密鑰中取出密鑰擴(kuò)展過程同時應(yīng)用了非線性變換和循環(huán)左移算法定義的所有運算都是在有限域GF(28)上進(jìn)行的加密算法概述(2)算法中進(jìn)行運算的單位包括:1個字節(jié)1列1行用字節(jié)數(shù)組表示的整個加密塊加密塊數(shù)組中,n可以是3,5,7,所代表的加密塊分別表示128bit,192bit和256bit。ai,ja0,ja1,ja2,ja3,jai,0ai,1…ai,3a0,2a0,3a1,2a1,3a2,2a2,3a0,0a0,1a1,0a1,1a2,0a2,1a3,0a3,1a3,2a3,3…a0,n…a1,n…a2,n…a3,n加密算法概述(3)令Nr代表算法的圈數(shù),Nk代表密鑰長度/32,Nb代表塊長度/32,則算法的圈數(shù)Nr的取值與Nk和Nb的關(guān)系為:除最后一圈不做列混合變換外,每一圈都經(jīng)過4步相同的操作:NrNb=4Nb=6Nb=8Nk=4101214Nk=6121214Nk=8141414Round(State,RoundKey){ByteSub(State);//S-盒ShiftRow(State);//行循環(huán)左移MixColumn(State);//列混合變換AddRoundKey(State,RoundKey);//與擴(kuò)展密鑰相異或}一圈變換(1)非線性代替(S-盒):包括2步在GF(28)上求每個字節(jié)關(guān)于模m(x)的乘法逆元素,‘00’的逆元定義為‘00’;(000110001163,01011111007c)應(yīng)用GF(2)上的一個仿射變換:一圈變換(2)每個字
溫馨提示
- 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)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026北京中國氣象局地球系統(tǒng)數(shù)值預(yù)報中心博士后科研工作站招收7人備考題庫(含答案詳解)
- 2026年1月福建廈門市生態(tài)環(huán)境局補(bǔ)充非在編人員招聘2人備考題庫及答案詳解參考
- 2026廣西貴港市引進(jìn)企業(yè)人才10人備考題庫及1套完整答案詳解
- 2026湖南株洲市淥口區(qū)教育局機(jī)關(guān)選調(diào)全額撥款事業(yè)編制人員6人筆試模擬試題及答案解析
- 2025福建漳州市國有資本運營集團(tuán)有限公司一線崗位招聘復(fù)面及相關(guān)事項筆試參考題庫及答案解析
- 2026上半年海南事業(yè)單位聯(lián)考三亞市民政局招聘下屬事業(yè)單位工作人員6人(第1號)考試參考題庫及答案解析
- 2026河北承德市承德縣民政局招聘消防設(shè)施操作員8人備考題庫附答案詳解
- 2026福建中醫(yī)藥大學(xué)附屬第三人民醫(yī)院第一次招聘編制外人員13人考試備考試題及答案解析
- 2026國家稅務(wù)總局寧夏回族自治區(qū)稅務(wù)局招聘事業(yè)單位工作人員27人備考題庫及1套完整答案詳解
- 2026新疆雙河國投運營集團(tuán)有限公司財務(wù)人員招聘2人備考題庫及答案詳解(考點梳理)
- 2026屆杭州高級中學(xué)高二上數(shù)學(xué)期末聯(lián)考試題含解析
- 2026年及未來5年中國無取向硅鋼片行業(yè)市場深度分析及發(fā)展趨勢預(yù)測報告
- 棄土場規(guī)范規(guī)章制度
- 2026年水下機(jī)器人勘探報告及未來五至十年深海資源報告
- 安徽省蕪湖市鳩江區(qū)2024-2025學(xué)年高一上學(xué)期期末考試生物試卷
- 2025年對中國汽車行業(yè)深度變革的觀察與思考報告
- 雙重預(yù)防體系建設(shè)自評報告模板
- 福建省泉州市晉江市2024-2025學(xué)年八年級上學(xué)期1月期末考試英語試題(含答案無聽力音頻及原文)
- 心血管疾病風(fēng)險評估
- 慢性肝病患者營養(yǎng)支持護(hù)理培訓(xùn)
- 2025年云服務(wù)器采購合同協(xié)議
評論
0/150
提交評論