《網(wǎng)絡(luò)安全設(shè)計》08-密碼學(xué) 3對稱密鑰加密_第1頁
《網(wǎng)絡(luò)安全設(shè)計》08-密碼學(xué) 3對稱密鑰加密_第2頁
《網(wǎng)絡(luò)安全設(shè)計》08-密碼學(xué) 3對稱密鑰加密_第3頁
《網(wǎng)絡(luò)安全設(shè)計》08-密碼學(xué) 3對稱密鑰加密_第4頁
《網(wǎng)絡(luò)安全設(shè)計》08-密碼學(xué) 3對稱密鑰加密_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

網(wǎng)絡(luò)安全設(shè)計密碼學(xué)⑶對稱密鑰加密Content什么是對稱密鑰加密?對稱密鑰加密技術(shù)類型對稱密鑰加密技術(shù)原理典型對稱密鑰加密算法密鑰的安全生成和分發(fā)算法1《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密什么是對稱密鑰加密?對稱密鑰加密SymmetricKeyCryptography

私鑰加密PrivateKeyCryptography

單鑰加密One-KeyCryptography現(xiàn)代加密技術(shù)的一種重要類型加密和解密使用同一個密鑰流式加密塊式加密(分組加密)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密2典型對稱密鑰加密算法流式加密算法RC(RC2、RC4、RC5)分組加密算法FeistalTEADESIDEAAESSMS4《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密3StreamCryptography《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密4流式加密RCRonRivest在1987年設(shè)計流式對稱加密方法密鑰可變長1~256byte(8~2048bit)面向字節(jié)操作(任意長度的明文)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密5RC算法(1)狀態(tài)向量初始化

設(shè):狀態(tài)向量S={S[0],S[1],S[2],…,S[255]}

令:S[i]=i(i=0..255)即256個元素依次賦值0~255

在整個計算過程中,S的各個元素僅僅進(jìn)行位置的交換(即數(shù)值換位),而始終包含0~255這256個數(shù)值(2)密鑰初始化

設(shè):臨時向量T={T[0],T[1],T[2],…,T[255]}

T[i]=K[imodl](i=0..255)將密鑰K循環(huán)賦值給T

此時,密鑰K已經(jīng)完成了使命,算法中不再使用《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密6RC算法(續(xù))(3)初始置換

用T產(chǎn)生S的初始置換

根據(jù)T[i]的值,將S[i]與S中指定元素進(jìn)行置換(即換位swap)操作

j=0; for(i=0to255)do{

j=(j+S[i]+T[i])mod256; swap(S[i],S[j]);}

初始置換操作的本質(zhì)就是根據(jù)密鑰的值,改變原來S中呈升序排列的數(shù)值,使之成為“隨機(jī)”的分布。至此,T也不再使用,算法初始化階段完成《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密7RC算法(續(xù))(4)加密運(yùn)算

輸入明文M,長度為n(byte),字節(jié)流為M[k](0≤k<n),經(jīng)過加密運(yùn)算,應(yīng)輸出密文C,密文字節(jié)流為C[k](0≤k<n)

i=j=0; for(k=0ton)do{

i=(i+1)mod256;

j=(j+S[i])mod256; swap(S[i],S[j]);

t=(S[i]+S[j])mod256;

C[k]=M[k]⊕S[t];}

RC4加密循環(huán)往復(fù)地使用狀態(tài)向量S,每個明文字節(jié)與S生成的數(shù)值進(jìn)行異或,得到密文,同時S中的元素不斷換位《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密8思考:RC加密算法如何解密?討論《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密9流式加密適合什么網(wǎng)絡(luò)應(yīng)用?BlockCryptography《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密10塊式加密(分組加密)分組加密要求分組密鑰作用在nbit明文分組上,產(chǎn)生nbit密文分組(明文、密文同樣長度)加密是可逆的(可解密),每一個明文分組唯一對應(yīng)一個密文分組,反之亦然共2n個不同的明文分組共2n個不同的密文分組共2n!個不同的變換關(guān)系(非奇異變換)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密11分組加密基本原理《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密124-bit明文→4-bit密文→變換關(guān)系例:1110密文:1011↑可逆↓“理想分組加密”方法分析考察代換加密表對于一個特定的變換,映射本身就是密鑰當(dāng)n=4時(如表)密鑰長度4×16=64bit一般地,對nbit加密密鑰長度n×2nbit較大分組的密鑰長度過長,不利于計算和管理例如,對64bits明文加密:

64×264=270≈1021(bits)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密13明文密文00001110000101000010110100110001010000100101111101101011011110001000001110011010101001101011110011000101110110011110000011110111理想分組加密的近似體制對于較大n的分組,采用2n!個不同可逆映射的一個子集(減少映射關(guān)系,從而縮短密鑰長度)例:n=4,定義線性方程組(類似Hill密碼)y1=k11x1+k12x2+k13x3+k14x4y2=k21x1+k22x2+k23x3+k24x4y3=k31x1+k32x2+k33x3+k34x4y4=k41x1+k42x2+k43x3+k44x4均為二進(jìn)制比特,模2運(yùn)算密鑰長度為n2=42=16bit減小密鑰長度是可能的,但安全性相應(yīng)降低《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密144-bit明文x1x2x3x4→密文y1y2y3y4Feistal加密使用乘積加密方法來逼近簡單代換加密乘積加密:依次使用兩個或兩個以上的基本密碼目標(biāo):開發(fā)一種分組加密方法分組長度nbit,密鑰長度kbit,用2k個變換變換方法——交替使用代換和置換基于ClaudeShannon加密理論交替使用混淆和擴(kuò)散《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密15加密系統(tǒng)的基本構(gòu)件用于挫敗基于統(tǒng)計方法的密碼分析混淆Confusion盡可能使密文和密鑰間的統(tǒng)計關(guān)系復(fù)雜化,阻止發(fā)現(xiàn)密鑰擴(kuò)散Diffusion使明文的統(tǒng)計特征消散在密文中,可以讓每個明文數(shù)字盡可能多地影響多個密文數(shù)字例如:代換和置換是混淆和擴(kuò)散的實(shí)際應(yīng)用《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密16Feistel加密原理《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密17Feistel解密方法及其證明解密與加密過程一致,逆序使用子密鑰K16…K1加密:明文為LE0|RE0,輸出密文為RE16|LE16解密:密文為LD0|RD0,輸出密文為RD16|LD16證明:對于加密過程,有:LE16=RE15;RE16=LE15⊕f(RE15,K16)對于解密過程第1輪,LD0=RE16;RD0=LE16;LD1=RD0=LE16=RE15

RD1=LD0⊕f(RD0,K16)=RE16⊕f(RE15,K16)=[LE15⊕f(RE15,K16)]⊕f(RE15,K16)=LE15故,解密第1輪輸出LE15|RE15,正是加密第16輪輸入左右互換的值。依此類推,解密第16輪,LD16=RE0,RD16=LE0,換位輸出為LE0|RE0,正是原始明文。證明完畢。《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密18Feistel加密重要參數(shù)分組長度長度越長,安全性高,但速度慢典型:64bit、128bit密鑰長度密鑰越長,安全性高,但速度慢典型:64bit、128bit(更佳)迭代輪數(shù)輪數(shù)越多,安全性高,但速度慢典型:16輪子密鑰生成算法K→k1k2…ki輪函數(shù)f《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密19TEATinyEncryptionAlgorithm微型加密算法劍橋大學(xué)DavidWheeler和RogerNeedam提出分組型對稱加密方法TEA不是通過算法的復(fù)雜性來保證,而是依賴加密的輪數(shù)(16或32或64輪)TEA加密速度快、算法簡單易實(shí)現(xiàn),并具有較強(qiáng)的抗差分攻擊能力QQ中使用TEA進(jìn)行數(shù)據(jù)加密《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密20TEA常數(shù)TEA算法使用了一個神秘常數(shù)δ(以保證每一輪加密有所差異)δ來源于黃金比率φ:

定義:《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密21TEA算法TEA的分組塊為64bit;密鑰長度為128bit《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密22TEA加密流程《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密23V0V1V1V0一個循環(huán)(含2輪)均為32bit運(yùn)算異或加法<<邏輯左移>>邏輯右移DESDataEncryptionStandard數(shù)據(jù)加密標(biāo)準(zhǔn)屬于分組加密算法會話密鑰(SessionKey)為56位(8-byte,其中第8位為奇偶校驗(yàn)位)的任意數(shù)數(shù)據(jù)劃分為64位的數(shù)據(jù)塊(分組)對64位的數(shù)據(jù)塊進(jìn)行16輪迭代運(yùn)算解密方法與加密完全一致,逆向使用子密鑰《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密24DES工作步驟初始變換IP迭代運(yùn)算f共進(jìn)行16輪每輪采用不同的子密鑰k1k2…k16逆變換IP-1《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密25DES算法《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密26(見下頁)64bits明文MIP32bitsL032bitsR0i=1...16i=1...16E48bitsS32bits+32bitsRi32bitsLi32bitsL1632bitsR16IP-164bits密文C64bits密鑰Ki=16?i=16?i=1...16①56bits28bitsC028bitsD0循環(huán)左移m(i)位循環(huán)左移m(i)位28bitsC128bitsD1②48bitsKi初始變換迭代運(yùn)算f逆變換子密鑰DES的S運(yùn)算《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密27DES四種工作方式電子密碼本(ElectronicCodeBook,ECB)密文分組鏈(CipherBlockChaining,CBC)密文反饋(CipherFeedBack,CFB)輸出反饋(OutputFeedBack,OFB)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密28DES加密準(zhǔn)備使明文長度成為64-bit的整數(shù)倍將明文分成n個64-bit分組Xi(i=0,1,…,n-1)如果明文長度不是64-bit的倍數(shù),則在明文末尾填充數(shù)據(jù)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密2964-bitblock64-bitblock64-bitblock······pad······padlength······64-bitblockpadlength······64-bitblockpadlengthDES工作方式①電子密碼本(ElectronicCodeBook,ECB)對64-bit明文組mi用密鑰K分別進(jìn)行加密,得到密文C=(c0,c1,…,cn-1),其中ci=DES(K,mi),i=0,1,…,n-1。此方式適合于并行處理,但相同的8-byte明文分組會加密得到相同的密文,而且被成組替換或修改而難以發(fā)現(xiàn)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密30m0m1······m2mn-1Kc0c1······c2cn-1KKKM→C→DES工作方式②密文分組鏈(CipherBlockChaining,CBC)每個明文分組Mi在加密前與前一組密文異或(XOR)后,再送到DES加密。第一個分組加密時,需設(shè)置一個初始值(InitializationVector)。CBC方式克服了ECB方式的缺點(diǎn),但由于加密與前一組密文有關(guān),因此密文錯誤會依次傳播下去,且無法采用并行處理;而一組密文在傳輸中被破壞,僅影響兩組明文(本身和下一組)的正確解密《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密31m0m1······m2mn-1Kc0c1······c2cn-1KKKIVM→C→DES工作方式③密文反饋(CipherFeedBack,CFB)每個明文分組與前一組密文的加密結(jié)果異或后作為密文。第一個分組加密時,需使用初始值IV。由于加密與前一組密文相關(guān),無法進(jìn)行并行處理,且錯誤會往后擴(kuò)散。此外,文本型明文的64-bit塊加密易被破譯《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密32m0m1······m2mn-1c0c1······c2cn-1IVM→C→DES工作方式③的可變長加密方法加密j-bit(j≤64)塊當(dāng)j=8,即加密字節(jié)流(即使是文本型明文也難以破譯)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密33IVM→C→64-jbits64-bit移位寄存器Ri(邏輯左移j位)jbits64-jjm0K丟棄64-jbits64-bit選擇寄存器Sj(選擇左側(cè)j位)jbits64-jjc06464jjj64-jjm1K64-jjc16464jjj64-jjm2K64-jjc26464jjjDES工作方式④輸出反饋(OutputFeedBack,OFB)與CFB方式一致,唯一不同的是OFB是直接取自前一組DES輸出的密文,故每個分組加密相互獨(dú)立,克服了CFB的密文錯誤傳播的缺點(diǎn)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密34IVM→C→64-jjm0K64-jjc06464jjj64-jjm1K64-jjc16464jjj64-jjm2K64-jjc26464jjj3DESTriple-DES三重DES使用3個密鑰進(jìn)行三次DES運(yùn)算約相當(dāng)于DES的112bits密鑰強(qiáng)度四種3DES模型——EEE3:三個不同密鑰,順序三次加密EDE3:三個不同密鑰,加密-解密-加密EEE2:密鑰K1=K3,順序三次加密EDE2:密鑰K1=K3,加密-解密-加密《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密35IDEAInternationalDataEncryptionAlgorithm國際數(shù)據(jù)加密算法屬于分組加密算法基于“相異代數(shù)群上的混合運(yùn)算”設(shè)計思想長度為128-bit的密鑰數(shù)據(jù)塊大小為64-bit加密速度快,易實(shí)現(xiàn)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密36IDEA算法《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密37IDEA算法圖解《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密3864-bit數(shù)據(jù)128-bit密鑰16-bit16-bit16-bit16-bit16-bit16-bit16-bit16-bit①②③④⑤⑥⑦⑧⑨⑩X116-bitX216-bitX316-bitX416-bit888816-bit16-bit16-bit16-bit⑾⑿⒀⒁循環(huán)左移25bits16-bit16-bit16-bit16-bit16-bit16-bit16-bit16-bit78126543910111213314151612345649505152177891011121AES高級加密標(biāo)準(zhǔn)AdvancedEncryptionStandard屬于分組加密技術(shù)采用Rijndael算法(Daeman&Rijmen,1999)分組長度128bits密鑰長度128/192/256bits,相應(yīng)10/12/14輪速度快,耗用內(nèi)存小,可靠性、防御能力強(qiáng)將替代DES成為新的數(shù)據(jù)加密標(biāo)準(zhǔn)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密39AES算法《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密40第10輪第9輪第10輪第1輪明文128bit密鑰128bit明文128bit密文128bit密文128bit輪密鑰加字節(jié)代換行移位列混淆輪密鑰加……w[0,3]第9輪字節(jié)代換行移位列混淆輪密鑰加字節(jié)代換行移位輪密鑰加擴(kuò)展密鑰w[4,7]輪密鑰加字節(jié)代換逆行移位逆列混淆逆輪密鑰加字節(jié)代換逆行移位逆……輪密鑰加w[36,39]w[40,43]第1輪列混淆逆輪密鑰加字節(jié)代換逆行移位逆44byteSMS4SMS4我國公布的第一個商用密碼算法(2006年1月)基于Feistel結(jié)構(gòu)的對稱密鑰分組加密技術(shù)分組長度為128bits密鑰長度為128bits32輪非線性迭代f數(shù)據(jù)處理單位:8bits和32bits解密過程同加密過程(逆向用子密鑰)用于WAPI(WiFi)加密《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密41SMS4算法結(jié)構(gòu)《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密42X4iX4i+1X4i+2X4i+3128-bit明文128-bit密鑰32-bit32-bit32-bit32-bitfX4i+5X4i+6ffX4i+7fX4i+4X4i+5X4i+6X4i+7i=0…7i++X35X34X33X32Y0Y1Y2Y3128-bit密文密鑰擴(kuò)展gk4ik4i+1k4i+2k4i+3輪函數(shù)f進(jìn)行32輪迭代每輪使用一個輪密鑰kr反向排列最后四個雙字X4i+4SMS4變換等價圖《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密43128-bit明文32-bitX0X1X2X332-bit32-bit32-bitX4X5X6X7X8······X31X32X33X34X35······128-bit密文32-bit32-bit32-bit32-bitff第1輪第2輪f第5輪f第32輪SMS4的輪函數(shù)f《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密44Xi+4=f(Xi,Xi+1,Xi+2,Xi+3,ki)=Xi⊕T(Xi+1⊕Xi+2⊕Xi+3⊕ki),i=0,1…31T(x)=L(S(x))32-bit運(yùn)算L(x)=x⊕(x<<2)⊕(x<<10)⊕(x<<18)⊕(x<<24)<<循環(huán)左移S(x)為S-box置換(32-bit):8-bit8-bit8-bit8-bitx

(32-bit)S-boxS-boxS-boxS-box8-bit8-bit8-bit8-bitS(x)(32-bit)SMS4的S-box《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密458-bitS-box8-bit0xRC行號R列號C查表結(jié)果值8-bit數(shù)值的非線性變換SMS4的輪函數(shù)f圖示《網(wǎng)絡(luò)安全設(shè)計》密碼學(xué)⑶對稱密鑰加密46XjXj+1Xj+2Xj+3kj32bits32bitsS-box<<2<<10<<18<<24Xj+4第j輪的f變換j=0,1,2…3132bits32bits32bits32bits32bitsSMS4的輪密鑰生成①密鑰擴(kuò)展算法準(zhǔn)備常數(shù)FKiFK0=(A3B1BAC6),F(xiàn)K1=(56AA3350)FK2=(677D9197),F(xiàn)K3=(B27022DC)參數(shù)CKi(i=0,1,…31)ckij=(4i+j)×7(mod256)

i=0,1,2…31,j=0,1,2,300070e15,1c232a31,383f464d,545b6269,70777e85,8c939aa1,a8afb6bd,c4cbd2d9,e0e7eef5,fc030a11,181f262d,343b4249,50575e65,6c737a81,888f969d,a4abb2b9,c0c7ced5,dce3eaf1,f8ff060d,141b2229,30373e45,4c535a61,686f767d,848b9299,a0a7aeb5,bcc3cad1,d8dfe6ed,f4fb0209,10171e25,2c333a41,

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論