第4章現(xiàn)代對(duì)稱分組密碼課件_第1頁(yè)
第4章現(xiàn)代對(duì)稱分組密碼課件_第2頁(yè)
第4章現(xiàn)代對(duì)稱分組密碼課件_第3頁(yè)
第4章現(xiàn)代對(duì)稱分組密碼課件_第4頁(yè)
第4章現(xiàn)代對(duì)稱分組密碼課件_第5頁(yè)
已閱讀5頁(yè),還剩271頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

現(xiàn)代對(duì)稱分組密碼forest@現(xiàn)代對(duì)稱分組密碼1回顧上一講的內(nèi)容古典密碼代替密碼單字母密碼多字母密碼置換密碼對(duì)稱密碼的兩個(gè)基本運(yùn)算代替和置換(Substitution&permutation)對(duì)稱密碼分析的兩個(gè)基本方法系統(tǒng)分析法(統(tǒng)計(jì)分析法)、窮舉法多輪加密數(shù)據(jù)安全基于算法的保密回顧上一講的內(nèi)容古典密碼2內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼3乘積密碼(ProductCiphers)因?yàn)檎Z(yǔ)言的特征,用代替和置換規(guī)則構(gòu)造的密碼是不安全的因此,可以考慮連續(xù)使用兩個(gè)或兩個(gè)以上的基本密碼的方式來(lái)增強(qiáng)密碼強(qiáng)度:兩次代替可以構(gòu)造一個(gè)更難于分析的代替兩次置換可以構(gòu)造一個(gè)更難于分析的置換代替之后在進(jìn)行一次置換,可以構(gòu)造一個(gè)強(qiáng)度更高的新密碼這是古典密碼通往現(xiàn)代密碼的橋梁乘積密碼(ProductCiphers)因?yàn)檎Z(yǔ)言的特征,用4乘積密碼(ProductCiphers)乘積密碼就是以某種方式連續(xù)執(zhí)行兩個(gè)或多個(gè)密碼以使得到的最后結(jié)果從密碼編碼的角度比其任何一個(gè)組成密碼都強(qiáng).兩個(gè)加密按它們加密的順序連接進(jìn)行合成時(shí),要求第一個(gè)方法的密文空間與第二個(gè)方法的明文空間一致。挫敗基于統(tǒng)計(jì)分析的密碼破譯乘積密碼(ProductCiphers)乘積密碼就是以某種5加密合成兩類(lèi)方法的合成比單個(gè)方法更具有抗非法解密的能力?這不一定都對(duì),第二個(gè)方法可以部分或全部抵消第一個(gè)方法的作用。加密合成兩類(lèi)方法的合成比單個(gè)方法更具有抗非法解密的能力?6第4章現(xiàn)代對(duì)稱分組密碼課件7如果合成的方法不滿足交換性,而且其中之一與另一個(gè)還獨(dú)立,則這一合成是有效的。比如換位,執(zhí)行一次“擴(kuò)散”,多字母代替,執(zhí)行一次“混亂”,不是一個(gè)群,因此可以被重復(fù)而且其組合復(fù)雜度進(jìn)一步增加。等于是擴(kuò)大了密鑰空間。如果合成的方法不滿足交換性,而且其中之一與另一個(gè)還獨(dú)立,則這8轉(zhuǎn)子機(jī)(RotorMachines)在現(xiàn)代密碼之前,轉(zhuǎn)子機(jī)是最普遍的乘積密碼在第二次世界大戰(zhàn)中得到廣泛應(yīng)用 –GermanEnigma,AlliedHagelin,JapanesePurple實(shí)現(xiàn)了一個(gè)非常復(fù)雜的可變的代替密碼使用一系列的轉(zhuǎn)子,每一個(gè)狀態(tài)給定一種代替表,每加密一個(gè)字母,轉(zhuǎn)子轉(zhuǎn)一格,代替表就變一個(gè)3個(gè)轉(zhuǎn)子可以產(chǎn)生263=17576代替表轉(zhuǎn)子機(jī)(RotorMachines)在現(xiàn)代密碼之前,轉(zhuǎn)子機(jī)9轉(zhuǎn)子機(jī)Rotormachine轉(zhuǎn)子機(jī)Rotormachine10置換密碼換位密碼把明文按行寫(xiě)入,按列讀出密鑰包含3方面信息:行寬,列高,讀出順序key: 4312567plaintext:attackp ostpone duntilt woamxyzciphertext:TTNAAPTMTSUOAODWCOIXPETZ完全保留字符的統(tǒng)計(jì)信息使用多輪加密可提高安全性置換密碼換位密碼把明文按行寫(xiě)入,按列讀出11多次置多次置換,減少結(jié)構(gòu)性排列,不易于重構(gòu)。多次置多次置換,減少結(jié)構(gòu)性排列,不易于重構(gòu)。12置換密碼分析置換密碼分析13內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼14DES的產(chǎn)生背景美國(guó)國(guó)家標(biāo)準(zhǔn)局(NBS)1973年公開(kāi)征求計(jì)算機(jī)加密算法標(biāo)準(zhǔn),要求如下:該算法必須提供較高的安全性;該算法必須完全確定并且易于理解;該算法的安全性不應(yīng)依賴于算法本身,而是應(yīng)該依賴于密鑰;該算法必須對(duì)所有的用戶有效;該算法必須適用于各種應(yīng)用;該算法必須能夠通過(guò)價(jià)格合理的電子器件得以實(shí)現(xiàn);該算法必須能夠有效使用;該算法必須能夠得以驗(yàn)證;該算法必須能夠得以出口。DES的產(chǎn)生背景美國(guó)國(guó)家標(biāo)準(zhǔn)局(NBS)1973年公開(kāi)征15數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)HISTORY1974年8月27日,NBS開(kāi)始第二次征集IBM提交了算法LucifercipherbyteamledbyFeistelused64-bitdatablockswith128-bitkey1977年正式頒布為數(shù)據(jù)加密標(biāo)準(zhǔn)(DES-DataEncryptionStandard)。1979年,美國(guó)銀行協(xié)會(huì)批準(zhǔn)使用DES。1980年,DES成為美國(guó)標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI)標(biāo)準(zhǔn)。1984年,ISO開(kāi)始在DES基礎(chǔ)上制定數(shù)據(jù)加密的國(guó)際標(biāo)準(zhǔn),稱之為DEA-1。美國(guó)國(guó)家安全局NSA每五年對(duì)該算法進(jìn)行評(píng)估,1994年,決定1998年12月之后不再使用DES?,F(xiàn)已由采用Rijndael算法的高級(jí)加密標(biāo)準(zhǔn)AES取代。數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)HISTORY1974年8月27日,16內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼17分組密碼與流密碼流密碼加密過(guò)程是將信息流分為基本的信息單位,然后與相應(yīng)的密鑰流作運(yùn)算從而掩蓋明文信息。分組密碼與之不同的是將明文編碼表示后的數(shù)字序列,劃分成等長(zhǎng)的組,在密鑰的作用下變換成等長(zhǎng)的輸出序列。解密時(shí),將加密后的分組與相同的密鑰相互作用而得到明文信息。分組密碼與流密碼流密碼加密過(guò)程是將信息流分為基本的信息單位,18分組密碼的特點(diǎn)分組密碼與流密碼的不同之處在于,分組密碼輸出的每一位數(shù)字不是只與相應(yīng)時(shí)刻輸入的明文數(shù)字有關(guān),而是還與一組長(zhǎng)為m的明文數(shù)字有關(guān)。在密鑰相同下,分組密碼對(duì)長(zhǎng)為m的輸入明文所實(shí)施的變換是等同的,所以只需研究對(duì)任一組明文數(shù)字的變換規(guī)則。分組密碼易于標(biāo)準(zhǔn)化和易于實(shí)現(xiàn);不善于隱藏明文的數(shù)據(jù)模式,可以離線操作,對(duì)于重放、插入、刪除等攻擊方式的抵御能力不強(qiáng)。(時(shí)間無(wú)關(guān))分組密碼的特點(diǎn)分組密碼與流密碼的不同之處在于,分組密碼輸出19分組密碼的長(zhǎng)度明文為分組長(zhǎng)度為m的序列,密文為分組長(zhǎng)度為n的序列:n>m,稱其為有數(shù)據(jù)擴(kuò)展的分組密碼;n<m,稱其為有數(shù)據(jù)壓縮的分組密碼;n=m,稱其為無(wú)數(shù)據(jù)擴(kuò)展與壓縮的分組密碼。我們一般所說(shuō)的分組密碼為無(wú)數(shù)據(jù)擴(kuò)展與壓縮的分組密碼。分組密碼的長(zhǎng)度明文為分組長(zhǎng)度為m的序列,密文為分組長(zhǎng)度為n的20分組密碼的一般設(shè)計(jì)原理-i分組密碼是將明文信息編碼表示后的數(shù)字序列劃分成長(zhǎng)為m的組 ,各組(長(zhǎng)為m的矢量)分別在密鑰控制下變換成等長(zhǎng)的輸出數(shù)字序列(長(zhǎng)度為n的矢量),其加密函數(shù)為,是n維矢量空間,為密鑰空間。分組密碼的一般設(shè)計(jì)原理-i分組密碼是將明文信息編碼表示后的數(shù)21分組密碼與簡(jiǎn)單代替密碼名文分組同密文分組一一映射;分組密碼算法可以理解為明文分組到密文分組的代替;分組的長(zhǎng)度n決定了代替方式的數(shù)量n=2時(shí),有12總代替方式:(2n)!分組密碼的密鑰:表示采用哪種代替方式明文分組密文分組變換規(guī)則分組密碼與簡(jiǎn)單代替密碼名文分組同密文分組一一映射;明文分組密22分組密碼的一般設(shè)計(jì)原理-iiN=4時(shí),共有16!=(24)!個(gè)映射方法密鑰長(zhǎng)度:表達(dá)16!需要45位分組必須足夠長(zhǎng)以抵抗窮舉攻擊分組密碼的一般設(shè)計(jì)原理-iiN=4時(shí),共有16!=(24)!23分組密碼的一般設(shè)計(jì)原理-iii一般地,對(duì)于n位的一般代替分組密碼,密鑰的個(gè)數(shù)為(2n)?。魑模?gt;密文的映射方法),為表示任一特定代替所需的二元數(shù)字位數(shù)為:lb(2n!)≈(n-1.44)2n=O(n2n)(bit)即密鑰長(zhǎng)度達(dá)n2n位。n=4,4×24=64n=64,64×264=270

≈1021位分組長(zhǎng)度n要足夠大,防止明文窮舉攻擊。分組密碼的一般設(shè)計(jì)原理-iii一般地,對(duì)于n位的一般代替分組24分組密碼的一般設(shè)計(jì)原理-ivDES的密鑰長(zhǎng)度僅為56位,AES的密鑰長(zhǎng)度為128/196/256分組密碼的設(shè)計(jì)問(wèn)題在于找到一種算法,能在密鑰的控制之下,從一個(gè)足夠大而且足夠好的代替子集中,簡(jiǎn)單而迅速地選取出一個(gè)代替。分組密碼的一般設(shè)計(jì)原理-ivDES的密鑰長(zhǎng)度僅為56位,AE25分組密碼的一般設(shè)計(jì)原理-v分組長(zhǎng)度足夠大密鑰量足夠大,能抵抗密鑰窮舉攻擊,但又不能過(guò)長(zhǎng),以利于密鑰管理由密鑰確定代替的算法要足夠復(fù)雜,能抵抗各種已知攻擊分組密碼的一般設(shè)計(jì)原理-v分組長(zhǎng)度足夠大26分組密碼設(shè)計(jì)原則Shannon指出:理想的密碼中,密文的統(tǒng)計(jì)特性獨(dú)立于密鑰。1949年Shannon提出了保證實(shí)際密碼安全的兩個(gè)基本原則:混亂(Confusion)和擴(kuò)散(Diffusion)原則?;靵y原則:為了避免密碼分析者利用明文和密文之間的依賴關(guān)系進(jìn)行破譯,密碼的設(shè)計(jì)應(yīng)保證這種依賴關(guān)系足夠復(fù)雜。需要非線性代換算法。擴(kuò)散原則:為避免密碼分析者對(duì)密鑰逐段破譯,密碼的設(shè)計(jì)應(yīng)保證密鑰的每位數(shù)字能夠影響密文中的多位數(shù)字。同時(shí),為了避免密碼分析者利用明文的統(tǒng)計(jì)特性,密碼的設(shè)計(jì)應(yīng)該保證明文的每位數(shù)字能夠影響密文中的多位數(shù)字,從而隱藏明文的統(tǒng)計(jì)特性。分組密碼設(shè)計(jì)原則Shannon指出:理想的密碼中,密文的統(tǒng)計(jì)27ShannonandSubstitution-

PermutationCiphers1949Shannon提出了代替置換網(wǎng)絡(luò)的思想substitution-permutation(S-P)networks–modernsubstitution-transpositionproductcipher這是構(gòu)成現(xiàn)代分組密碼的基礎(chǔ)S-P網(wǎng)絡(luò)基于密碼學(xué)的兩個(gè)基本操作:–substitution(S-box)–permutation(P-box)提供了消息的擴(kuò)散與混亂ShannonandSubstitution-

Perm28實(shí)現(xiàn)方法的設(shè)計(jì)原則軟件實(shí)現(xiàn)的要求:使用子模塊:密碼運(yùn)算在子模塊上進(jìn)行,要求子塊的長(zhǎng)度能自然地適應(yīng)軟件編程,如8、16、32比特等。使用簡(jiǎn)單的運(yùn)算。在子塊上所進(jìn)行的密碼運(yùn)算盡量采用易于軟件實(shí)現(xiàn)的運(yùn)算。最好是用標(biāo)準(zhǔn)處理器所具有的一些基本指令,如加法、乘法、移位等。硬件實(shí)現(xiàn)的要求:能夠采用同樣的器件來(lái)實(shí)現(xiàn)加密和解密,以節(jié)省費(fèi)用和體積。盡量采用標(biāo)準(zhǔn)的組件結(jié)構(gòu),以便能適應(yīng)于在超大規(guī)模集成電路中實(shí)現(xiàn)。實(shí)現(xiàn)方法的設(shè)計(jì)原則軟件實(shí)現(xiàn)的要求:29內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼30簡(jiǎn)化的DESSimplifiedDES方案,簡(jiǎn)稱S-DES方案。分組長(zhǎng)度8位,密鑰長(zhǎng)度10位加密算法涉及五個(gè)函數(shù):(1)初始置換IP(initialpermutation)(2)復(fù)合函數(shù)fk1,它是由密鑰K確定的,具有置換和代替的運(yùn)算。(3)轉(zhuǎn)換函數(shù)SW(4)復(fù)合函數(shù)fk2(5)初始置換IP的逆置換IP-1簡(jiǎn)化的DESSimplifiedDES方案,簡(jiǎn)稱S-DES31加密算法的數(shù)學(xué)表示IP-1?fk2?SW?fk1?IP 也可寫(xiě)為 密文=IP-1fk2(SW(fk1(IP(明文))))) 其中K1=P8(移位(P10(密鑰K))) K2=P8(移位(移位(P10(密鑰K))))解密算法的數(shù)學(xué)表示: 明文=IP-1(fk1(SW(fk2(IP(密文)))))加密算法的數(shù)學(xué)表示IP-1?fk2?SW?fk1?IP32第4章現(xiàn)代對(duì)稱分組密碼課件33S-DES的密鑰生成S-DES的密鑰生成34exampleexample35S-DES加密操作S-DES加密操作36第4章現(xiàn)代對(duì)稱分組密碼課件37第4章現(xiàn)代對(duì)稱分組密碼課件38第4章現(xiàn)代對(duì)稱分組密碼課件39第4章現(xiàn)代對(duì)稱分組密碼課件40內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼41Feistel分組加密算法結(jié)構(gòu)之動(dòng)機(jī)分組加密算法,一一映射(加密是可逆的)當(dāng)n較小時(shí),等價(jià)于代替變換當(dāng)n較大時(shí),比如n=64,無(wú)法表達(dá)這樣的任意變換。Feistel結(jié)構(gòu)很好地解決了二者之間的矛盾Feistel分組加密算法結(jié)構(gòu)之動(dòng)機(jī)分組加密算法,一一映射(42Feistel分組加密算法結(jié)構(gòu)之思想基本思想:用簡(jiǎn)單算法的乘積來(lái)近似表達(dá)大尺寸的替換變換乘積密碼就是以某種方式連續(xù)執(zhí)行兩個(gè)或多個(gè)密碼,以使得所得到的最后結(jié)果或乘積從密碼編碼的角度比其任意一個(gè)組成密碼都更強(qiáng)。交替使用代替和置換(permutation)混亂(confusion)和擴(kuò)散(diffusion)概念的應(yīng)用Feistel分組加密算法結(jié)構(gòu)之思想基本思想:用簡(jiǎn)單算法的乘43Feistel密碼

結(jié)構(gòu)Feistel密碼

結(jié)構(gòu)44Feistel結(jié)構(gòu)定義加密:Li=Ri-1;Ri=Li-1⊕F(Ri-1,Ki)解密:Ri-1=LiLi-1=Ri⊕F(Ri-1,Ki)=Ri⊕F(Li,Ki)Feistel結(jié)構(gòu)定義加密:Li=Ri-1;Ri=45Feistel加密與解密Feistel加密與解密46基于Feistel結(jié)構(gòu)的密碼算法設(shè)計(jì)分組大小。越大安全性越高,但速度下降,64比特較合理密鑰位數(shù)。越大安全性越高,但速度下降,64比特廣泛使用,但現(xiàn)在已經(jīng)不夠用—〉128循環(huán)次數(shù)。越多越安全,典型16次子鑰產(chǎn)生算法。算法越復(fù)雜,就增加密碼分析的難度round輪函數(shù)。函數(shù)越復(fù)雜,就增加密碼分析的難度快速軟件實(shí)現(xiàn),包括加密和解密算法易于分析。便于掌握算法的保密強(qiáng)度以及擴(kuò)展辦法?;贔eistel結(jié)構(gòu)的密碼算法設(shè)計(jì)分組大小。越大安全性越高47內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼48DES的描述DES利用56比特串長(zhǎng)度的密鑰K來(lái)加密長(zhǎng)度為64位的明文,得到長(zhǎng)度為64位的密文DES的描述DES利用56比特串長(zhǎng)度的密鑰K來(lái)加密長(zhǎng)度為6449DES加解密過(guò)程DES加解密過(guò)程50DES示意圖DES示意圖51輸入的明文首先經(jīng)過(guò)一個(gè)初始置換IP,將明文分為左半部分和右半部分,各長(zhǎng)32位。然后進(jìn)行16輪完全相同的運(yùn)算,即圖中的f函數(shù)。在這些函數(shù)中,數(shù)據(jù)與密鑰結(jié)合起來(lái)從而隱藏了密文,最后左、右半部分合在一起經(jīng)過(guò)一個(gè)末置換IP-1(初始置換的逆置換),就完成了密文的生成。輸入的明文首先經(jīng)過(guò)一個(gè)初始置換IP,將明文分為左半部分和右半52初始置換IP和IP-1同S-DES(簡(jiǎn)化的DES)相同,DES在算法的開(kāi)始和結(jié)束部分增加了兩個(gè)置換操作。目的增加算法的抗分析能力。初始置換IP和IP-1同S-DES(簡(jiǎn)化的DES)相同,DE53輸入(64位)58504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157輸出(64位)初始變換IPL0(32位)R0(32位)輸入(64位)58504234261810254置換碼組輸入(64位)40848165624643239747155523633138646145422623037545135321612936444125220602835343115119592734242105018582633141949175725輸出(64位)逆初始變換IP-1置換碼組輸入(64位)408481656255初始置換IP和IP-1(互逆)M20→M'14M‘14→M‘‘20初始置換IP和IP-1(互逆)M20→M'14M‘14→M56一輪DES一輪DES57左32位右32位Li-1Ri-1擴(kuò)展置換E48位(明文)64位密鑰作第i次迭代的計(jì)算機(jī)子密鑰Ki密鑰程序表48位(密鑰)8組6位碼S1S2S8模2加選擇函數(shù)輸入:6位輸出:4位+++++…+++++左32位右32位Li-1Ri-1擴(kuò)展置換E48位(明文)645832位置換32位32位LiRi左32位右32位Ri-1Li-1模2加+++++...++++++乘積變換中的一次迭代32位置換32位32位LiRi左32位右32位Ri-1Li-59DES:FunctionFDES:FunctionF60第4章現(xiàn)代對(duì)稱分組密碼課件61擴(kuò)展置換的作用它產(chǎn)生了與密鑰同長(zhǎng)度的數(shù)據(jù)進(jìn)行異或運(yùn)算它產(chǎn)生了更長(zhǎng)的結(jié)果,使得在代替運(yùn)算時(shí)能進(jìn)行壓縮(增加復(fù)雜性)輸入的一位將影響兩個(gè)替換(例如第一位輸入,存在于第一個(gè)和第8個(gè)子分組中,每個(gè)子分組分別進(jìn)行S盒替換),所以輸出對(duì)輸入的依賴性將傳播得更快,明文或密鑰的一點(diǎn)小的變動(dòng)應(yīng)該使密文發(fā)生一個(gè)大的變化.這叫雪崩效應(yīng)。(avalancheeffect)擴(kuò)展置換的作用它產(chǎn)生了與密鑰同長(zhǎng)度的數(shù)據(jù)進(jìn)行異或運(yùn)算62第4章現(xiàn)代對(duì)稱分組密碼課件63第4章現(xiàn)代對(duì)稱分組密碼課件64第4章現(xiàn)代對(duì)稱分組密碼課件65S-Box對(duì)每個(gè)盒,6比特輸入中的第1和第6比特組成的二進(jìn)制數(shù)確定的行,中間4位二進(jìn)制數(shù)用來(lái)確定16列中的相應(yīng)列,行、列交叉處的十進(jìn)制數(shù)轉(zhuǎn)換為二進(jìn)制數(shù)后,4位二進(jìn)制數(shù)表示作為輸出。S-Box對(duì)每個(gè)盒,6比特輸入中的第1和第6比特組66S-盒的構(gòu)造(S6)S-盒的構(gòu)造(S6)67P-盒置換1607202129122817011523260518311002082414322703091913300622110425P-盒置換160720212912281768第4章現(xiàn)代對(duì)稱分組密碼課件6957494133251791585042342618102595143352719113605244366355473931331576254463830221466153453729211352820124置換選擇1密鑰(64位)C0(28位)D0(28位)5749413325179635547370DES的解密過(guò)程采用與加密相同的算法。以逆序(即)使用密鑰。第一圈用第16個(gè)子密鑰K16,第二圈用K15,其余類(lèi)推。DES的解密過(guò)程采用與加密相同的算法。71不同微處理器上的DES軟件實(shí)現(xiàn)速度處理器處理器速度(MHz)每秒處理的DES分組個(gè)數(shù)80884.7370680007.69008028661,10068020163,50068030163,90080286255,000680305010,000680402516,000680404023,000804866643,000采樣專(zhuān)業(yè)硬件速度可達(dá)千萬(wàn)分組/S不同微處理器上的DES軟件實(shí)現(xiàn)速度處理器處理器速度(MHz72內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼73對(duì)DES的討論弱密鑰與半弱密鑰互補(bǔ)密鑰DES的破譯密鑰長(zhǎng)度的爭(zhēng)論DES的輪數(shù)函數(shù)FS-盒的疑問(wèn)對(duì)DES的討論弱密鑰與半弱密鑰74弱密鑰初始密鑰被分成兩部分,每部分都單獨(dú)做移位。如果每一部分的每一位都是0或都是1,則每一圈的子密鑰都相同。這樣的密鑰被稱為弱密鑰。弱密鑰的定義:若k使得加密函數(shù)與解密函數(shù)一致,則稱k為弱密鑰。EK(

EK(p))=pDES存在4個(gè)弱密鑰弱密鑰初始密鑰被分成兩部分,每部分都單獨(dú)做移位。如果每一部分75半弱密鑰有些成對(duì)的密鑰會(huì)將明文加密成相同的密文,即一對(duì)密鑰中的一個(gè)能用來(lái)解密由另一個(gè)密鑰加密的消息,這種密鑰稱作半弱密鑰。這些密鑰不是產(chǎn)生16個(gè)不同的子密鑰,而是產(chǎn)生兩種不同的子密鑰。半弱密鑰:對(duì)于密鑰k,存在一個(gè)不同的密鑰,滿足。至少有12個(gè)半弱密鑰。半弱密鑰有些成對(duì)的密鑰會(huì)將明文加密成相同的密文,即一對(duì)密鑰中76對(duì)DES的討論弱密鑰與半弱密鑰互補(bǔ)密鑰DES的破譯密鑰長(zhǎng)度的爭(zhēng)論DES的輪數(shù)函數(shù)FS-盒的疑問(wèn)對(duì)DES的討論弱密鑰與半弱密鑰77互補(bǔ)密鑰將密鑰的0換成1,1換成0,就得到該密鑰的補(bǔ)密鑰。如果用原密鑰加密一組明文,則用補(bǔ)密鑰可以將明文的補(bǔ)碼加密成密文的補(bǔ)碼。DES算法具有互補(bǔ)性,即:若、是的補(bǔ)、是的補(bǔ),則?;パa(bǔ)密鑰將密鑰的0換成1,1換成0,就得到該密鑰的補(bǔ)密鑰。如78證明-i對(duì)于一位的A和B有下的真值表,因此,對(duì)于任何等長(zhǎng)的A和B,有 (A⊕B)′=A′⊕B,A⊕B=A′⊕B′證明-i對(duì)于一位的A和B有下的真值表,79證明-ii如果明文和密鑰取補(bǔ)(A’、B’、K’),相當(dāng)于第一個(gè)XOR的輸入也取補(bǔ),這樣輸出和沒(méi)有取補(bǔ)時(shí)一樣F(B,K),進(jìn)一步我們看到對(duì)于第二個(gè)XOR的輸入只有一個(gè)取補(bǔ)了,因此輸出A’⊕F(B,K)=(A⊕F(B,K))’(A⊕B)′=A′⊕B,A⊕B=A′⊕B′證明-ii如果明文和密鑰取80互補(bǔ)密鑰對(duì)窮舉式攻擊的影響在一個(gè)選擇明文攻擊中,如果選擇明文X,攻擊者可以得到Y(jié)1=EK[X]和Y2=EK[X′],那么窮舉式攻擊只需要進(jìn)行255次加密,而不是256次.注意到(Y2)′=EK′[X],現(xiàn)在選取一個(gè)測(cè)試密鑰T,計(jì)算ET[X].如果結(jié)果是Y1,T是正確的密鑰.如果結(jié)果是(Y2)′,T′是正確的密鑰.如果都不是,我們就通過(guò)一次加密否定了兩個(gè)基本密鑰?;パa(bǔ)密鑰對(duì)窮舉式攻擊的影響在一個(gè)選擇明文攻擊中,如果選擇明文81對(duì)DES的討論弱密鑰與半弱密鑰互補(bǔ)密鑰DES的破譯密鑰長(zhǎng)度的爭(zhēng)論DES的輪數(shù)函數(shù)FS-盒的疑問(wèn)對(duì)DES的討論弱密鑰與半弱密鑰82DES的破譯:分組密碼的分析方法根據(jù)攻擊者所掌握的信息,可將分組密碼的攻擊分為以下幾類(lèi):唯密文攻擊已知明文攻擊選擇明文攻擊攻擊的復(fù)雜度數(shù)據(jù)復(fù)雜度:實(shí)施該攻擊所需輸入的數(shù)據(jù)量處理復(fù)雜度:處理這些數(shù)據(jù)所需要的計(jì)算量DES的破譯:分組密碼的分析方法根據(jù)攻擊者所掌握的信息,可將83分組密碼的典型攻擊方法最可靠的攻擊辦法:強(qiáng)力攻擊差分密碼分析:通過(guò)分析明文對(duì)的差值對(duì)密文對(duì)的差值的影響來(lái)恢復(fù)某些密鑰比特。選擇明文攻擊,需要247個(gè)選擇明文線性密碼分析:本質(zhì)上是一種已知明文攻擊方法,通過(guò)尋找一個(gè)給定密碼算法的有效的線性近似表達(dá)式來(lái)破譯密碼系統(tǒng),需要247個(gè)已知明文插值攻擊方法密鑰相關(guān)攻擊分組密碼的典型攻擊方法最可靠的攻擊辦法:強(qiáng)力攻擊84強(qiáng)力攻擊窮盡密鑰搜索攻擊:唯密文:用2k個(gè)密鑰對(duì)密文解密,看明文是否有意義已知(選擇)明文:用2k個(gè)密鑰對(duì)明文加密,看明密文是否相同字典攻擊:明密文對(duì)編成字典,得到密文后在字典中查找對(duì)應(yīng)的明文,需2n個(gè)明文-密文對(duì)。查表攻擊:是選擇明文攻擊,給定明文,用所有的2k個(gè)密鑰,預(yù)計(jì)算密文,構(gòu)成密文-密鑰表,得到密文后在表中查找對(duì)應(yīng)的密鑰。(某些協(xié)議中會(huì)出現(xiàn)固定的短語(yǔ))強(qiáng)力攻擊窮盡密鑰搜索攻擊:85DES的破譯1990年,以色列密碼學(xué)家EliBiham和AdiShamir提出了差分密碼分析法,可對(duì)DES進(jìn)行選擇明文攻擊。IBM聲稱1974年就知道該方法,因此在S盒和P盒的設(shè)計(jì)中做了考慮,差分方法對(duì)8輪DES需214個(gè)選擇明文,對(duì)其他分組密碼算法更有效。線性密碼分析比差分密碼分析更有效強(qiáng)力攻擊:平均255次嘗試差分密碼分析法:使用247對(duì)明密文的選擇明文攻擊線性密碼分析法:使用247對(duì)明密文的已知明文攻擊DES的破譯1990年,以色列密碼學(xué)家EliBiham和A86對(duì)DES的討論弱密鑰與半弱密鑰互補(bǔ)密鑰DES的破譯密鑰長(zhǎng)度的爭(zhēng)論DES的輪數(shù)函數(shù)FS-盒的疑問(wèn)對(duì)DES的討論弱密鑰與半弱密鑰87密鑰長(zhǎng)度關(guān)于DES算法的另一個(gè)最有爭(zhēng)議的問(wèn)題就是擔(dān)心實(shí)際56比特的密鑰長(zhǎng)度不足以抵御窮舉式攻擊,因?yàn)槊荑€量只有256≈1017個(gè)早在1977年,Diffie和Hellman已建議制造一個(gè)每微秒能測(cè)試100萬(wàn)個(gè)密鑰的VLSI芯片。每微秒測(cè)試100萬(wàn)個(gè)密鑰的機(jī)器大約需要一天就可以搜索整個(gè)密鑰空間。他們估計(jì)制造這樣的機(jī)器大約需要2000萬(wàn)美元。Hellman提出通過(guò)空間和時(shí)間的折衷,可以加速密鑰的尋找過(guò)程。他建議計(jì)算并存儲(chǔ)256種用每種可能密鑰加密一段固定明文的結(jié)果。估計(jì)機(jī)器造價(jià)500萬(wàn)美元。密鑰長(zhǎng)度關(guān)于DES算法的另一個(gè)最有爭(zhēng)議的問(wèn)題就是擔(dān)心實(shí)際5688密鑰長(zhǎng)度1997年1月28日,美國(guó)的RSA數(shù)據(jù)安全公司在RSA安全年會(huì)上公布了一項(xiàng)“秘密密鑰挑戰(zhàn)”競(jìng)賽,其中包括懸賞1萬(wàn)美元破譯密鑰長(zhǎng)度為56比特的DES。美國(guó)克羅拉多洲的程序員Verser從1997年2月18日起,用了96天時(shí)間,在Internet上數(shù)萬(wàn)名志愿者的協(xié)同工作下,成功地找到了DES的密鑰,贏得了懸賞的1萬(wàn)美元。1998年7月電子前沿基金會(huì)(ElectronicFrontierFoundation)使用一臺(tái)25萬(wàn)美元的電腦在56小時(shí)內(nèi)破譯了56比特密鑰的DES。1999年1月RSA數(shù)據(jù)安全會(huì)議期間,電子前沿基金會(huì)用22小時(shí)15分鐘就宣告破解了一個(gè)DES的密鑰。密鑰長(zhǎng)度1997年1月28日,美國(guó)的RSA數(shù)據(jù)安全公司在RS89對(duì)DES的討論弱密鑰與半弱密鑰互補(bǔ)密鑰DES的破譯密鑰長(zhǎng)度的爭(zhēng)論DES的輪數(shù)函數(shù)FS-盒的疑問(wèn)對(duì)DES的討論弱密鑰與半弱密鑰90DES的輪數(shù)Feistel密碼的編碼強(qiáng)度來(lái)自于:迭代輪數(shù)、函數(shù)F和密鑰使用的算法。一般來(lái)說(shuō),循環(huán)次數(shù)越多進(jìn)行密碼分析的難度就越大。一般來(lái)說(shuō),循環(huán)次數(shù)的選擇準(zhǔn)則是要使已知的密碼分析的工作量大于簡(jiǎn)單的窮舉式密鑰搜索的工作量。對(duì)于16個(gè)循環(huán)的DES來(lái)說(shuō),差分密碼分析的運(yùn)算次數(shù)為255.1,而窮舉式搜索要求255,前者比后者效率稍低,如果DES有15次循環(huán),那么差分密碼分析比窮舉式搜索的工作量要小。DES的輪數(shù)Feistel密碼的編碼強(qiáng)度來(lái)自于:迭代輪數(shù)、函91對(duì)DES的討論弱密鑰與半弱密鑰互補(bǔ)密鑰DES的破譯密鑰長(zhǎng)度的爭(zhēng)論DES的輪數(shù)函數(shù)FS-盒的疑問(wèn)對(duì)DES的討論弱密鑰與半弱密鑰92函數(shù)FFeistel密碼的核心是函數(shù)F,函數(shù)F依賴于S盒的使用。函數(shù)F作用:給Feistel密碼注入了混淆的成分。F是非線性的,是DES中唯一的非線性成分。函數(shù)F設(shè)計(jì)的雪崩準(zhǔn)則(輸入的一位變化引起輸出的很多位變化嚴(yán)格雪崩準(zhǔn)則SAC(Strictavalanchecriterion):對(duì)于任何的i,j,當(dāng)任何一個(gè)輸入比特i變化時(shí),一個(gè)S盒子的任何輸出比特j變化的概率為1/2。比特獨(dú)立準(zhǔn)則BIC(bitindependencecriterion):對(duì)于任意的i,j,k,當(dāng)任意一個(gè)輸入比特i變化時(shí),輸出j和k應(yīng)當(dāng)獨(dú)立地變化。函數(shù)FFeistel密碼的核心是函數(shù)F,函數(shù)F依賴于S盒的使93DES的雪崩效應(yīng)-iDES的雪崩效應(yīng)-i94DES的雪崩效應(yīng)-iiDES的雪崩效應(yīng)-ii95對(duì)DES的討論弱密鑰與半弱密鑰互補(bǔ)密鑰DES的破譯密鑰長(zhǎng)度的爭(zhēng)論DES的輪數(shù)函數(shù)FS-盒的疑問(wèn)對(duì)DES的討論弱密鑰與半弱密鑰96S-盒的構(gòu)造要求S-盒是許多密碼算法的唯一非線性部件,因此,它的密碼強(qiáng)度決定了整個(gè)算法的安全強(qiáng)度提供了密碼算法所必須的混亂作用如何全面準(zhǔn)確地度量S-盒的密碼強(qiáng)度和設(shè)計(jì)有效的S-盒是分組密碼設(shè)計(jì)和分析中的難題非線性度、差分均勻性、嚴(yán)格雪崩準(zhǔn)則、沒(méi)有陷門(mén)S-盒的構(gòu)造要求S-盒是許多密碼算法的唯一非線性部件,因此,97S-Box問(wèn)題-iS-Box的設(shè)計(jì)細(xì)節(jié),NSA和IBM都未公開(kāi)過(guò)。70年代中Lexar公司和Bell公司都對(duì)S-Box進(jìn)行了大量研究,她們都發(fā)現(xiàn)了S-Box有一些不能解釋的特征,但并沒(méi)有找到弱點(diǎn)。Lexar結(jié)論:“已發(fā)現(xiàn)的DES的結(jié)構(gòu)毫無(wú)疑問(wèn)增強(qiáng)了系統(tǒng)抗擊一定攻擊的能力,同時(shí)也正是這些結(jié)構(gòu)似乎削弱了系統(tǒng)抗攻擊的能力?!保⊿-Box不是隨機(jī)選取的)Bell結(jié)論:S-Box可能隱藏了陷門(mén)。S-Box問(wèn)題-iS-Box的設(shè)計(jì)細(xì)節(jié),NSA和IBM都未公98S-Box問(wèn)題-ii1976年美國(guó)NSA提出了下列幾條S盒的設(shè)計(jì)準(zhǔn)則:沒(méi)有一個(gè)S盒是它輸入變量的線性函數(shù)S盒的每一行是整數(shù)0,…,15的一個(gè)置換改變S盒的一個(gè)輸入位至少要引起兩位的輸出改變對(duì)任何一個(gè)S盒和任何一個(gè)輸入X,S(X)和S(X⊕001100)至少有兩個(gè)比特不同(這里X是長(zhǎng)度為6的比特串)對(duì)任何一個(gè)S盒,對(duì)任何一個(gè)輸入對(duì)e,f屬于{0,1},S(X)≠S(X⊕11ef00)對(duì)任何一個(gè)S盒,如果固定一個(gè)輸入比特,來(lái)看一個(gè)固定輸出比特的值,使這個(gè)輸出比特為0的輸入數(shù)目將接近于使這個(gè)輸出比特為1的輸入數(shù)目。S-Box問(wèn)題-ii1976年美國(guó)NSA提出了下列幾條S盒的99S-Box問(wèn)題-iii在差分分析公開(kāi)后,1992年IBM公布了S-盒和P-盒設(shè)計(jì)準(zhǔn)則。沒(méi)有一個(gè)S盒是它輸入變量的線性函數(shù)S盒的每一行是整數(shù)0,…,15的一個(gè)置換改變S盒的一個(gè)輸入位至少要引起兩位的輸出改變對(duì)任何一個(gè)S盒和任何一個(gè)輸入X,S(X)和S(X⊕001100)至少有兩個(gè)比特不同(這里X是長(zhǎng)度為6的比特串)對(duì)任何一個(gè)S盒,對(duì)任何一個(gè)輸入對(duì)e,f屬于{0,1},S(X)≠S(X⊕11ef00)對(duì)于任何輸入之間的非零的6位差值,具有這種差值的輸入中32對(duì)中有不超過(guò)8對(duì)的輸出相同。S-Box問(wèn)題-iii在差分分析公開(kāi)后,1992年IBM公布100S盒子的設(shè)計(jì)從本質(zhì)上說(shuō),希望S盒子輸入向量的任何變動(dòng)在輸出方都產(chǎn)生看似隨機(jī)的變動(dòng)。這兩種變動(dòng)之間的關(guān)系是非線性的并難于用線性函數(shù)近似。S盒的設(shè)計(jì)方法:隨機(jī)產(chǎn)生:s盒較小時(shí)不太理想帶測(cè)試的隨機(jī)產(chǎn)生人工產(chǎn)生:利用簡(jiǎn)單的數(shù)學(xué)原理,配合手工方法,DES就是利用這種方法設(shè)計(jì)。用數(shù)學(xué)方法:安全性高S盒子的設(shè)計(jì)從本質(zhì)上說(shuō),希望S盒子輸入向量的任何變動(dòng)在輸出方101內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼102分組密碼的工作模式電子密碼本ECB(electroniccodebookmode)密碼分組鏈接CBC(cipherblockchaining)密碼反饋CFB(cipherfeedback)輸出反饋OFB(outputfeedback)計(jì)數(shù)器CTR(counter)分組密碼的工作模式電子密碼本ECB(electronic103電子密碼本(ECB)重要特點(diǎn):在給定的密鑰下,相同的明文總是對(duì)應(yīng)相同的密文。名稱的由來(lái):對(duì)給定的密鑰,任何64位的明文組只有唯一的密文與之對(duì)應(yīng),可以想像存在一個(gè)很厚的密碼本,根據(jù)任意64位明文可以查到相應(yīng)的密文。使用方法:若明文長(zhǎng)度大于64位,可將其分為64位分組,必要時(shí)可對(duì)最后一個(gè)分組進(jìn)行填充。電子密碼本(ECB)重要特點(diǎn):在給定的密鑰下,相同的明文總是104電子密碼本(ECB)電子密碼本(ECB)105ECB的特點(diǎn)簡(jiǎn)單和有效可以并行實(shí)現(xiàn)不能隱藏明文的模式信息相同明文相同密文同樣信息多次出現(xiàn)造成泄漏對(duì)明文的主動(dòng)攻擊是可能的(提款)信息塊可被替換、重排、刪除、重放誤差傳遞:密文塊損壞僅對(duì)應(yīng)明文塊損壞適合于傳輸短信息:加密密鑰ECB的特點(diǎn)簡(jiǎn)單和有效106分組密碼的工作模式電子密碼本ECB(electroniccodebookmode)密碼分組鏈接CBC(cipherblockchaining)密碼反饋CFB(cipherfeedback)輸出反饋OFB(outputfeedback)計(jì)數(shù)器CTR(counter)分組密碼的工作模式電子密碼本ECB(electronic107密碼分組鏈接(CBC)目點(diǎn):消除電子密碼本ECB模式的缺點(diǎn)。相同的明文加密成不同的密文。密碼算法的輸入是當(dāng)前的明文組和上一個(gè)密文組的異或。相當(dāng)于每個(gè)明文異或一個(gè)初始化向量的ECB密碼分組鏈接(CBC)目點(diǎn):消除電子密碼本ECB模式的缺點(diǎn)108密碼分組鏈接(CBC)密碼分組鏈接(CBC)109CBC特點(diǎn)沒(méi)有已知的并行實(shí)現(xiàn)算法能隱藏明文的模式信息:相同明文不同密文需要共同的初始化向量IVIV需要保密:初始化向量IV可以用來(lái)改變第一塊對(duì)明文的主動(dòng)攻擊是不容易的信息塊不容易被替換、重排、刪除、重放誤差傳遞:密文塊損壞兩明文塊損壞安全性好于ECB適合于傳輸長(zhǎng)度大于64位的報(bào)文,是大多系統(tǒng)的標(biāo)準(zhǔn)如SSL、IPSecCBC特點(diǎn)沒(méi)有已知的并行實(shí)現(xiàn)算法110分組密碼的工作模式電子密碼本ECB(electroniccodebookmode)密碼分組鏈接CBC(cipherblockchaining)密碼反饋CFB(cipherfeedback)輸出反饋OFB(outputfeedback)計(jì)數(shù)器CTR(counter)分組密碼的工作模式電子密碼本ECB(electronic111密碼反饋CFB在密碼分組鏈接CBC模式下,整個(gè)數(shù)據(jù)分組在接受完成之后才能進(jìn)行加密。例如:某些安全的網(wǎng)絡(luò)環(huán)境中,可能需要當(dāng)從終端輸入時(shí),必須把每個(gè)字符實(shí)時(shí)加密傳給主機(jī),這種方式CBC無(wú)法滿足。CFB:分組密碼流密碼密碼反饋CFB在密碼分組鏈接CBC模式下,整個(gè)數(shù)據(jù)分組在接受112CFB加密示意圖CFB加密示意圖113CFB解密示意圖CFB解密示意圖114CFB特點(diǎn)相當(dāng)于自同步序列密碼分組密碼流密碼隱藏了明文模式需要共同的移位寄存器初始值IV對(duì)于不同的消息,IV必須唯一:如果第三方知道了先前的EK(IV),則可恢復(fù)P1誤差傳遞:明文的一個(gè)錯(cuò)誤會(huì)影響后面所有密文。密文的1位錯(cuò)誤會(huì)引起對(duì)應(yīng)明文的1位錯(cuò)誤,同時(shí)密文進(jìn)入移位寄存器后,會(huì)引起其后多個(gè)明文單元的錯(cuò)誤。CFB特點(diǎn)相當(dāng)于自同步序列密碼115流密碼的分類(lèi)依據(jù)狀態(tài)轉(zhuǎn)移函數(shù)與輸入明文有無(wú)關(guān)系分類(lèi),也即系統(tǒng)狀態(tài)與明文信息的關(guān)系來(lái)劃分:同步流密碼:與明文信息無(wú)關(guān),即密碼流獨(dú)立于明文。自同步流密碼:與明文信息有關(guān),不僅與當(dāng)前輸入有關(guān),而且與以前的輸入歷史有關(guān)。流密碼的分類(lèi)依據(jù)狀態(tài)轉(zhuǎn)移函數(shù)與輸入明文有無(wú)關(guān)系分類(lèi)116分組密碼的工作模式電子密碼本ECB(electroniccodebookmode)密碼分組鏈接CBC(cipherblockchaining)密碼反饋CFB(cipherfeedback)輸出反饋OFB(outputfeedback)計(jì)數(shù)器CTR(counter)分組密碼的工作模式電子密碼本ECB(electronic117輸出反饋OFB同CFB模式非常相似OFB:分組密碼流密碼輸出反饋OFB同CFB模式非常相似118OFB加密示意圖OFB加密示意圖119OFB解密示意圖OFB解密示意圖120OFB特點(diǎn)相當(dāng)于同步序列密碼OFB:分組密碼流密碼隱藏了明文模式對(duì)于不同的消息,IV必須唯一誤差傳遞:傳輸過(guò)程中一個(gè)密文單元的錯(cuò)誤只影響對(duì)應(yīng)明文單元對(duì)明文的主動(dòng)攻擊是可能的密文的某位取反,恢復(fù)的明文相應(yīng)位也取反信息塊可被替換、重放安全性較CFB差在明文存在之前可以進(jìn)行離線工作OFB特點(diǎn)相當(dāng)于同步序列密碼121分組密碼的工作模式電子密碼本ECB(electroniccodebookmode)密碼分組鏈接CBC(cipherblockchaining)密碼反饋CFB(cipherfeedback)輸出反饋OFB(outputfeedback)計(jì)數(shù)器CTR(counter)分組密碼的工作模式電子密碼本ECB(electronic122計(jì)數(shù)器模式Counter(CTR)很早之前就提出,但在ATM網(wǎng)絡(luò)安全和IPSec中的廣泛應(yīng)用才引起注意CTR:分組密碼流密碼與OFB類(lèi)似,但使用加密計(jì)數(shù)器值,而不是反饋值必須對(duì)每一個(gè)明文使用一個(gè)不同的計(jì)數(shù)器值加解密方式:Ci=PiXOROi

(取Oi

與Pi長(zhǎng)度相同的位數(shù))Oi=DESK(i)應(yīng)用于高速網(wǎng)絡(luò)加密計(jì)數(shù)器模式Counter(CTR)很早之前就提出,但在AT123計(jì)數(shù)器模式Counter(CTR)計(jì)數(shù)器模式Counter(CTR)124CTR特點(diǎn)CTR:分組密碼流密碼有效性:可以并行實(shí)現(xiàn)可以預(yù)處理適用于高速網(wǎng)絡(luò)可以隨機(jī)訪問(wèn)加密的數(shù)據(jù)分組隱藏了明文模式,與CBC模式一樣安全可以處理任意長(zhǎng)度的消息誤差傳遞:一個(gè)單元損壞只影響對(duì)應(yīng)單元對(duì)明文的主動(dòng)攻擊是可能的信息塊可被替換、重放CTR特點(diǎn)CTR:分組密碼流密碼125內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼126DES密碼的應(yīng)用由于DES在窮舉攻擊下相對(duì)比較脆弱,因此一般不能簡(jiǎn)單使用DES進(jìn)行加密處理,需要某種算法進(jìn)行替代,這里通常有兩種方案:一種是利用全新的算法。另一種是為保護(hù)對(duì)使用DES的已有軟件和硬件的投資,采用多個(gè)密鑰的多個(gè)多次DES加密。應(yīng)用最廣泛的是:三重DES加密DES密碼的應(yīng)用由于DES在窮舉攻擊下相對(duì)比較脆弱,因此一般127雙重DES(DoubleDES)雙重DES(DoubleDES)128雙重DES的討論雙重DES的討論129中間相遇攻擊對(duì)雙重DES有:攻擊過(guò)程:給定明文密文對(duì)(P,C)1、首先用K1的所有256個(gè)密鑰加密P,對(duì)結(jié)果按X的值排序保存在表T中。2、用K2的所有256個(gè)密鑰解密C,每解密一次,就將解密結(jié)果與T中的值比較,如果有相等的,就用剛測(cè)試的兩個(gè)密鑰對(duì)P加密,若結(jié)果為C,則這兩個(gè)密鑰可能是正確的密鑰。中間相遇攻擊對(duì)雙重DES有:攻擊過(guò)程:130對(duì)雙重DES的中間相遇攻擊的分析二重DES所用密鑰的長(zhǎng)度應(yīng)是112bits,所以密鑰空間為2112,也就是選擇密鑰有2112個(gè)可能性。即一個(gè)明文P有2112種方式映射到密文空間對(duì)于任意給定的一個(gè)明文P,經(jīng)二重DES加密后可能得到264個(gè)密文中的一個(gè)。即一個(gè)明文P有264個(gè)變換結(jié)果。于是對(duì)給定一個(gè)明文P,可加密成密文C的密鑰個(gè)數(shù)為2112/264=248。也就是對(duì)一個(gè)(P,C)對(duì)將產(chǎn)生248個(gè)錯(cuò)誤的結(jié)果。2112264密文分組明文分組明文分組密文分組264對(duì)雙重DES的中間相遇攻擊的分析二重DES所用密鑰的長(zhǎng)度應(yīng)是131對(duì)雙重DES的中間相遇攻擊的分析給定兩個(gè)明密文對(duì),虛警率降為248-64=2-16。因?yàn)閷?duì)第一個(gè)明密文對(duì)成立的密鑰K,使第2個(gè)(P,C)成立的概率為1/264。換句話說(shuō),對(duì)已知2個(gè)明文-密文對(duì)的中間相遇攻擊成功的概率為1-2-16。攻擊用的代價(jià){加密或解密所用運(yùn)算次數(shù)}≦2×256,比攻擊單DES所需的255多不了多少。需要大量的存儲(chǔ)器:256×64=1017字節(jié),例如對(duì)128位密鑰,中間攻擊需要1039字節(jié),如果一位信息對(duì)應(yīng)一個(gè)鋁原子,1039字節(jié)需要一立方公里的鋁。對(duì)雙重DES的中間相遇攻擊的分析給定兩個(gè)明密文對(duì),虛警率降為132Triple-DES的四種模型對(duì)付中間攻擊的一個(gè)方法是使用三重DESDES-EEE3:三個(gè)不同密鑰,順序使用三次加密算法DES-EDE3:三個(gè)不同密鑰,依次使用加密-解密-加密算法DES-EEE2:K1=K3,同上DES-EDE2:K1=K3,同上Triple-DES的四種模型對(duì)付中間攻擊的一個(gè)方法是使用三133雙密鑰的三重DES雙密鑰的三重DES134對(duì)雙密鑰的三重DES的分析該模式由IBM設(shè)計(jì),可與常規(guī)加密算法兼容這種替代DES的加密較為流行并且已被采納用于密鑰管理標(biāo)準(zhǔn)(TheKeyManagerStandardsANSX9.17和ISO8732).交替使用K1和K2可以抵抗中間相遇攻擊C=EK1(DK2(EK1(P))),如果C=EK2(EK1(EK1(P))),可以采用中間攻擊,只需要256+2次加密目前還沒(méi)有針對(duì)兩個(gè)密鑰三重DES的實(shí)用攻擊方法。但對(duì)兩個(gè)密鑰三重DES的攻擊有一些設(shè)想,以這些設(shè)想為基礎(chǔ)將來(lái)可能設(shè)計(jì)出更成功的攻擊技術(shù)。對(duì)雙密鑰的三重DES的分析該模式由IBM設(shè)計(jì),可與常規(guī)加密135三密鑰的三重DES三密鑰的三重DES136結(jié)束語(yǔ)當(dāng)你盡了自己的最大努力時(shí),失敗也是偉大的,所以不要放棄,堅(jiān)持就是正確的。WhenYouDoYourBest,FailureIsGreat,SoDon'TGiveUp,StickToTheEnd結(jié)束語(yǔ)137謝謝大家榮幸這一路,與你同行It'SAnHonorToWalkWithYouAllTheWay演講人:XXXXXX時(shí)間:XX年XX月XX日

謝謝大家演講人:XXXXXX138現(xiàn)代對(duì)稱分組密碼forest@現(xiàn)代對(duì)稱分組密碼139回顧上一講的內(nèi)容古典密碼代替密碼單字母密碼多字母密碼置換密碼對(duì)稱密碼的兩個(gè)基本運(yùn)算代替和置換(Substitution&permutation)對(duì)稱密碼分析的兩個(gè)基本方法系統(tǒng)分析法(統(tǒng)計(jì)分析法)、窮舉法多輪加密數(shù)據(jù)安全基于算法的保密回顧上一講的內(nèi)容古典密碼140內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼141乘積密碼(ProductCiphers)因?yàn)檎Z(yǔ)言的特征,用代替和置換規(guī)則構(gòu)造的密碼是不安全的因此,可以考慮連續(xù)使用兩個(gè)或兩個(gè)以上的基本密碼的方式來(lái)增強(qiáng)密碼強(qiáng)度:兩次代替可以構(gòu)造一個(gè)更難于分析的代替兩次置換可以構(gòu)造一個(gè)更難于分析的置換代替之后在進(jìn)行一次置換,可以構(gòu)造一個(gè)強(qiáng)度更高的新密碼這是古典密碼通往現(xiàn)代密碼的橋梁乘積密碼(ProductCiphers)因?yàn)檎Z(yǔ)言的特征,用142乘積密碼(ProductCiphers)乘積密碼就是以某種方式連續(xù)執(zhí)行兩個(gè)或多個(gè)密碼以使得到的最后結(jié)果從密碼編碼的角度比其任何一個(gè)組成密碼都強(qiáng).兩個(gè)加密按它們加密的順序連接進(jìn)行合成時(shí),要求第一個(gè)方法的密文空間與第二個(gè)方法的明文空間一致。挫敗基于統(tǒng)計(jì)分析的密碼破譯乘積密碼(ProductCiphers)乘積密碼就是以某種143加密合成兩類(lèi)方法的合成比單個(gè)方法更具有抗非法解密的能力?這不一定都對(duì),第二個(gè)方法可以部分或全部抵消第一個(gè)方法的作用。加密合成兩類(lèi)方法的合成比單個(gè)方法更具有抗非法解密的能力?144第4章現(xiàn)代對(duì)稱分組密碼課件145如果合成的方法不滿足交換性,而且其中之一與另一個(gè)還獨(dú)立,則這一合成是有效的。比如換位,執(zhí)行一次“擴(kuò)散”,多字母代替,執(zhí)行一次“混亂”,不是一個(gè)群,因此可以被重復(fù)而且其組合復(fù)雜度進(jìn)一步增加。等于是擴(kuò)大了密鑰空間。如果合成的方法不滿足交換性,而且其中之一與另一個(gè)還獨(dú)立,則這146轉(zhuǎn)子機(jī)(RotorMachines)在現(xiàn)代密碼之前,轉(zhuǎn)子機(jī)是最普遍的乘積密碼在第二次世界大戰(zhàn)中得到廣泛應(yīng)用 –GermanEnigma,AlliedHagelin,JapanesePurple實(shí)現(xiàn)了一個(gè)非常復(fù)雜的可變的代替密碼使用一系列的轉(zhuǎn)子,每一個(gè)狀態(tài)給定一種代替表,每加密一個(gè)字母,轉(zhuǎn)子轉(zhuǎn)一格,代替表就變一個(gè)3個(gè)轉(zhuǎn)子可以產(chǎn)生263=17576代替表轉(zhuǎn)子機(jī)(RotorMachines)在現(xiàn)代密碼之前,轉(zhuǎn)子機(jī)147轉(zhuǎn)子機(jī)Rotormachine轉(zhuǎn)子機(jī)Rotormachine148置換密碼換位密碼把明文按行寫(xiě)入,按列讀出密鑰包含3方面信息:行寬,列高,讀出順序key: 4312567plaintext:attackp ostpone duntilt woamxyzciphertext:TTNAAPTMTSUOAODWCOIXPETZ完全保留字符的統(tǒng)計(jì)信息使用多輪加密可提高安全性置換密碼換位密碼把明文按行寫(xiě)入,按列讀出149多次置多次置換,減少結(jié)構(gòu)性排列,不易于重構(gòu)。多次置多次置換,減少結(jié)構(gòu)性排列,不易于重構(gòu)。150置換密碼分析置換密碼分析151內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼152DES的產(chǎn)生背景美國(guó)國(guó)家標(biāo)準(zhǔn)局(NBS)1973年公開(kāi)征求計(jì)算機(jī)加密算法標(biāo)準(zhǔn),要求如下:該算法必須提供較高的安全性;該算法必須完全確定并且易于理解;該算法的安全性不應(yīng)依賴于算法本身,而是應(yīng)該依賴于密鑰;該算法必須對(duì)所有的用戶有效;該算法必須適用于各種應(yīng)用;該算法必須能夠通過(guò)價(jià)格合理的電子器件得以實(shí)現(xiàn);該算法必須能夠有效使用;該算法必須能夠得以驗(yàn)證;該算法必須能夠得以出口。DES的產(chǎn)生背景美國(guó)國(guó)家標(biāo)準(zhǔn)局(NBS)1973年公開(kāi)征153數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)HISTORY1974年8月27日,NBS開(kāi)始第二次征集IBM提交了算法LucifercipherbyteamledbyFeistelused64-bitdatablockswith128-bitkey1977年正式頒布為數(shù)據(jù)加密標(biāo)準(zhǔn)(DES-DataEncryptionStandard)。1979年,美國(guó)銀行協(xié)會(huì)批準(zhǔn)使用DES。1980年,DES成為美國(guó)標(biāo)準(zhǔn)化協(xié)會(huì)(ANSI)標(biāo)準(zhǔn)。1984年,ISO開(kāi)始在DES基礎(chǔ)上制定數(shù)據(jù)加密的國(guó)際標(biāo)準(zhǔn),稱之為DEA-1。美國(guó)國(guó)家安全局NSA每五年對(duì)該算法進(jìn)行評(píng)估,1994年,決定1998年12月之后不再使用DES?,F(xiàn)已由采用Rijndael算法的高級(jí)加密標(biāo)準(zhǔn)AES取代。數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)HISTORY1974年8月27日,154內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼155分組密碼與流密碼流密碼加密過(guò)程是將信息流分為基本的信息單位,然后與相應(yīng)的密鑰流作運(yùn)算從而掩蓋明文信息。分組密碼與之不同的是將明文編碼表示后的數(shù)字序列,劃分成等長(zhǎng)的組,在密鑰的作用下變換成等長(zhǎng)的輸出序列。解密時(shí),將加密后的分組與相同的密鑰相互作用而得到明文信息。分組密碼與流密碼流密碼加密過(guò)程是將信息流分為基本的信息單位,156分組密碼的特點(diǎn)分組密碼與流密碼的不同之處在于,分組密碼輸出的每一位數(shù)字不是只與相應(yīng)時(shí)刻輸入的明文數(shù)字有關(guān),而是還與一組長(zhǎng)為m的明文數(shù)字有關(guān)。在密鑰相同下,分組密碼對(duì)長(zhǎng)為m的輸入明文所實(shí)施的變換是等同的,所以只需研究對(duì)任一組明文數(shù)字的變換規(guī)則。分組密碼易于標(biāo)準(zhǔn)化和易于實(shí)現(xiàn);不善于隱藏明文的數(shù)據(jù)模式,可以離線操作,對(duì)于重放、插入、刪除等攻擊方式的抵御能力不強(qiáng)。(時(shí)間無(wú)關(guān))分組密碼的特點(diǎn)分組密碼與流密碼的不同之處在于,分組密碼輸出157分組密碼的長(zhǎng)度明文為分組長(zhǎng)度為m的序列,密文為分組長(zhǎng)度為n的序列:n>m,稱其為有數(shù)據(jù)擴(kuò)展的分組密碼;n<m,稱其為有數(shù)據(jù)壓縮的分組密碼;n=m,稱其為無(wú)數(shù)據(jù)擴(kuò)展與壓縮的分組密碼。我們一般所說(shuō)的分組密碼為無(wú)數(shù)據(jù)擴(kuò)展與壓縮的分組密碼。分組密碼的長(zhǎng)度明文為分組長(zhǎng)度為m的序列,密文為分組長(zhǎng)度為n的158分組密碼的一般設(shè)計(jì)原理-i分組密碼是將明文信息編碼表示后的數(shù)字序列劃分成長(zhǎng)為m的組 ,各組(長(zhǎng)為m的矢量)分別在密鑰控制下變換成等長(zhǎng)的輸出數(shù)字序列(長(zhǎng)度為n的矢量),其加密函數(shù)為,是n維矢量空間,為密鑰空間。分組密碼的一般設(shè)計(jì)原理-i分組密碼是將明文信息編碼表示后的數(shù)159分組密碼與簡(jiǎn)單代替密碼名文分組同密文分組一一映射;分組密碼算法可以理解為明文分組到密文分組的代替;分組的長(zhǎng)度n決定了代替方式的數(shù)量n=2時(shí),有12總代替方式:(2n)!分組密碼的密鑰:表示采用哪種代替方式明文分組密文分組變換規(guī)則分組密碼與簡(jiǎn)單代替密碼名文分組同密文分組一一映射;明文分組密160分組密碼的一般設(shè)計(jì)原理-iiN=4時(shí),共有16!=(24)!個(gè)映射方法密鑰長(zhǎng)度:表達(dá)16!需要45位分組必須足夠長(zhǎng)以抵抗窮舉攻擊分組密碼的一般設(shè)計(jì)原理-iiN=4時(shí),共有16!=(24)!161分組密碼的一般設(shè)計(jì)原理-iii一般地,對(duì)于n位的一般代替分組密碼,密鑰的個(gè)數(shù)為(2n)?。魑模?gt;密文的映射方法),為表示任一特定代替所需的二元數(shù)字位數(shù)為:lb(2n!)≈(n-1.44)2n=O(n2n)(bit)即密鑰長(zhǎng)度達(dá)n2n位。n=4,4×24=64n=64,64×264=270

≈1021位分組長(zhǎng)度n要足夠大,防止明文窮舉攻擊。分組密碼的一般設(shè)計(jì)原理-iii一般地,對(duì)于n位的一般代替分組162分組密碼的一般設(shè)計(jì)原理-ivDES的密鑰長(zhǎng)度僅為56位,AES的密鑰長(zhǎng)度為128/196/256分組密碼的設(shè)計(jì)問(wèn)題在于找到一種算法,能在密鑰的控制之下,從一個(gè)足夠大而且足夠好的代替子集中,簡(jiǎn)單而迅速地選取出一個(gè)代替。分組密碼的一般設(shè)計(jì)原理-ivDES的密鑰長(zhǎng)度僅為56位,AE163分組密碼的一般設(shè)計(jì)原理-v分組長(zhǎng)度足夠大密鑰量足夠大,能抵抗密鑰窮舉攻擊,但又不能過(guò)長(zhǎng),以利于密鑰管理由密鑰確定代替的算法要足夠復(fù)雜,能抵抗各種已知攻擊分組密碼的一般設(shè)計(jì)原理-v分組長(zhǎng)度足夠大164分組密碼設(shè)計(jì)原則Shannon指出:理想的密碼中,密文的統(tǒng)計(jì)特性獨(dú)立于密鑰。1949年Shannon提出了保證實(shí)際密碼安全的兩個(gè)基本原則:混亂(Confusion)和擴(kuò)散(Diffusion)原則?;靵y原則:為了避免密碼分析者利用明文和密文之間的依賴關(guān)系進(jìn)行破譯,密碼的設(shè)計(jì)應(yīng)保證這種依賴關(guān)系足夠復(fù)雜。需要非線性代換算法。擴(kuò)散原則:為避免密碼分析者對(duì)密鑰逐段破譯,密碼的設(shè)計(jì)應(yīng)保證密鑰的每位數(shù)字能夠影響密文中的多位數(shù)字。同時(shí),為了避免密碼分析者利用明文的統(tǒng)計(jì)特性,密碼的設(shè)計(jì)應(yīng)該保證明文的每位數(shù)字能夠影響密文中的多位數(shù)字,從而隱藏明文的統(tǒng)計(jì)特性。分組密碼設(shè)計(jì)原則Shannon指出:理想的密碼中,密文的統(tǒng)計(jì)165ShannonandSubstitution-

PermutationCiphers1949Shannon提出了代替置換網(wǎng)絡(luò)的思想substitution-permutation(S-P)networks–modernsubstitution-transpositionproductcipher這是構(gòu)成現(xiàn)代分組密碼的基礎(chǔ)S-P網(wǎng)絡(luò)基于密碼學(xué)的兩個(gè)基本操作:–substitution(S-box)–permutation(P-box)提供了消息的擴(kuò)散與混亂ShannonandSubstitution-

Perm166實(shí)現(xiàn)方法的設(shè)計(jì)原則軟件實(shí)現(xiàn)的要求:使用子模塊:密碼運(yùn)算在子模塊上進(jìn)行,要求子塊的長(zhǎng)度能自然地適應(yīng)軟件編程,如8、16、32比特等。使用簡(jiǎn)單的運(yùn)算。在子塊上所進(jìn)行的密碼運(yùn)算盡量采用易于軟件實(shí)現(xiàn)的運(yùn)算。最好是用標(biāo)準(zhǔn)處理器所具有的一些基本指令,如加法、乘法、移位等。硬件實(shí)現(xiàn)的要求:能夠采用同樣的器件來(lái)實(shí)現(xiàn)加密和解密,以節(jié)省費(fèi)用和體積。盡量采用標(biāo)準(zhǔn)的組件結(jié)構(gòu),以便能適應(yīng)于在超大規(guī)模集成電路中實(shí)現(xiàn)。實(shí)現(xiàn)方法的設(shè)計(jì)原則軟件實(shí)現(xiàn)的要求:167內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼168簡(jiǎn)化的DESSimplifiedDES方案,簡(jiǎn)稱S-DES方案。分組長(zhǎng)度8位,密鑰長(zhǎng)度10位加密算法涉及五個(gè)函數(shù):(1)初始置換IP(initialpermutation)(2)復(fù)合函數(shù)fk1,它是由密鑰K確定的,具有置換和代替的運(yùn)算。(3)轉(zhuǎn)換函數(shù)SW(4)復(fù)合函數(shù)fk2(5)初始置換IP的逆置換IP-1簡(jiǎn)化的DESSimplifiedDES方案,簡(jiǎn)稱S-DES169加密算法的數(shù)學(xué)表示IP-1?fk2?SW?fk1?IP 也可寫(xiě)為 密文=IP-1fk2(SW(fk1(IP(明文))))) 其中K1=P8(移位(P10(密鑰K))) K2=P8(移位(移位(P10(密鑰K))))解密算法的數(shù)學(xué)表示: 明文=IP-1(fk1(SW(fk2(IP(密文)))))加密算法的數(shù)學(xué)表示IP-1?fk2?SW?fk1?IP170第4章現(xiàn)代對(duì)稱分組密碼課件171S-DES的密鑰生成S-DES的密鑰生成172exampleexample173S-DES加密操作S-DES加密操作174第4章現(xiàn)代對(duì)稱分組密碼課件175第4章現(xiàn)代對(duì)稱分組密碼課件176第4章現(xiàn)代對(duì)稱分組密碼課件177第4章現(xiàn)代對(duì)稱分組密碼課件178內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼179Feistel分組加密算法結(jié)構(gòu)之動(dòng)機(jī)分組加密算法,一一映射(加密是可逆的)當(dāng)n較小時(shí),等價(jià)于代替變換當(dāng)n較大時(shí),比如n=64,無(wú)法表達(dá)這樣的任意變換。Feistel結(jié)構(gòu)很好地解決了二者之間的矛盾Feistel分組加密算法結(jié)構(gòu)之動(dòng)機(jī)分組加密算法,一一映射(180Feistel分組加密算法結(jié)構(gòu)之思想基本思想:用簡(jiǎn)單算法的乘積來(lái)近似表達(dá)大尺寸的替換變換乘積密碼就是以某種方式連續(xù)執(zhí)行兩個(gè)或多個(gè)密碼,以使得所得到的最后結(jié)果或乘積從密碼編碼的角度比其任意一個(gè)組成密碼都更強(qiáng)。交替使用代替和置換(permutation)混亂(confusion)和擴(kuò)散(diffusion)概念的應(yīng)用Feistel分組加密算法結(jié)構(gòu)之思想基本思想:用簡(jiǎn)單算法的乘181Feistel密碼

結(jié)構(gòu)Feistel密碼

結(jié)構(gòu)182Feistel結(jié)構(gòu)定義加密:Li=Ri-1;Ri=Li-1⊕F(Ri-1,Ki)解密:Ri-1=LiLi-1=Ri⊕F(Ri-1,Ki)=Ri⊕F(Li,Ki)Feistel結(jié)構(gòu)定義加密:Li=Ri-1;Ri=183Feistel加密與解密Feistel加密與解密184基于Feistel結(jié)構(gòu)的密碼算法設(shè)計(jì)分組大小。越大安全性越高,但速度下降,64比特較合理密鑰位數(shù)。越大安全性越高,但速度下降,64比特廣泛使用,但現(xiàn)在已經(jīng)不夠用—〉128循環(huán)次數(shù)。越多越安全,典型16次子鑰產(chǎn)生算法。算法越復(fù)雜,就增加密碼分析的難度round輪函數(shù)。函數(shù)越復(fù)雜,就增加密碼分析的難度快速軟件實(shí)現(xiàn),包括加密和解密算法易于分析。便于掌握算法的保密強(qiáng)度以及擴(kuò)展辦法?;贔eistel結(jié)構(gòu)的密碼算法設(shè)計(jì)分組大小。越大安全性越高185內(nèi)容提要乘積密碼DES的產(chǎn)生與應(yīng)用分組密碼的設(shè)計(jì)原理與方法簡(jiǎn)化的DESFeistel密碼結(jié)構(gòu)對(duì)DES的描述對(duì)DES的討論分組密碼的工作模式DES密碼的應(yīng)用內(nèi)容提要乘積密碼186DES的描述DES利用56比特串長(zhǎng)度的密鑰K來(lái)加密長(zhǎng)度為64位的明文,得到長(zhǎng)度為64位的密文DES的描述DES利用56比特串長(zhǎng)度的密鑰K來(lái)加密長(zhǎng)度為64187DES加解密過(guò)程DES加解密過(guò)程188DES示意圖DES示意圖189輸入的明文首先經(jīng)過(guò)一個(gè)初始置換IP,將明文分為左半部分和右半部分,各長(zhǎng)32位。然后進(jìn)行16輪完全相同的運(yùn)算,即圖中的f函數(shù)。在這些函數(shù)中,數(shù)據(jù)與密鑰結(jié)合起來(lái)從而隱藏了密文,最后左、右半部分合在一起經(jīng)過(guò)一個(gè)末置換IP-1(初始置換的逆置換),就完成了密文的生成。輸入的明文首先經(jīng)過(guò)一個(gè)初始置換IP,將明文分為左半部分和右半190初始置換IP和IP-1同S-DES(簡(jiǎn)化的DES)相同,DES在算法的開(kāi)始和結(jié)束部分增加了兩個(gè)置換操作。目的增加算法的抗分析能力。初始置換IP和IP-1同S-DES(簡(jiǎn)化的DES)相同,DE191輸入(64位)58504234261810260524436282012462544638302214664564840322416857494133251791595143352719113615345372921135635547393123157輸出(64位)初始變換IPL0(32位)R0(32位)輸入(64位)585042342618102192置換碼組輸入(64位)40848165624643239747155523633138646145422623037545135321612936444125220602835343115119592734242105018582633141949175725輸出(64位)逆初始變換IP-1置換碼組輸入(64位)4084816562193初始置換IP和IP-1(互逆)M20→M'14M‘14→M‘‘20初始置換IP和IP-1(互逆)M20→M'14M‘14→M194一輪DES一輪DES195左32位右32位Li-1Ri-1擴(kuò)展置換E48位(明文)64位密鑰作第i次迭代的計(jì)算機(jī)子密鑰Ki密鑰程序表48位(密鑰)8組6位碼S1S2S8模2加選擇函數(shù)輸入:6位輸出:4位+++++…+++++左32位右32位Li-1Ri-1擴(kuò)展置換E48位(明文)6419632位置換32位32位LiRi左32位右32位Ri-1Li-1模2加+++++...++++++乘積變換中的一次迭代32位置換32位32位LiRi左32位右32位Ri-1Li-197DES:FunctionFDES:FunctionF198第4章現(xiàn)代對(duì)稱分組密碼課件199擴(kuò)展置換的作用它產(chǎn)生了與密鑰同長(zhǎng)度的數(shù)據(jù)進(jìn)行異或運(yùn)算它產(chǎn)生了更長(zhǎng)的結(jié)果,使得在代替運(yùn)算時(shí)能進(jìn)行壓縮(增加復(fù)雜性)輸入的一位將影響兩個(gè)替換(例如第一位輸入,存在于第一個(gè)和第8個(gè)子分組中,每個(gè)子分組分別進(jìn)行S盒替換),所以輸出對(duì)輸入的依賴性將傳播得更快,明文或密鑰的一點(diǎn)小的變動(dòng)應(yīng)該使密文發(fā)生一個(gè)大的變化.這叫雪崩效應(yīng)。(avalancheeffect)擴(kuò)展置換的作用它產(chǎn)生了與密鑰同長(zhǎng)度的數(shù)據(jù)進(jìn)行異或運(yùn)算200第4章現(xiàn)代對(duì)稱分組密碼課件201第4章現(xiàn)代對(duì)稱分組密碼課件202第4章現(xiàn)代對(duì)稱分組密碼課件20

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論