現(xiàn)代常規(guī)的分組加密算法_第1頁(yè)
現(xiàn)代常規(guī)的分組加密算法_第2頁(yè)
現(xiàn)代常規(guī)的分組加密算法_第3頁(yè)
現(xiàn)代常規(guī)的分組加密算法_第4頁(yè)
現(xiàn)代常規(guī)的分組加密算法_第5頁(yè)
已閱讀5頁(yè),還剩24頁(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)代常規(guī)的分組加密算法第一頁(yè),共二十九頁(yè),2022年,8月28日我們主要考察如下三種加密算法1.TripleDES2.IDEA3.RC5其他一些較實(shí)用的算法,自己看書了解,如Blowfish,CAST,以及RC2。第二頁(yè),共二十九頁(yè),2022年,8月28日1TRIPLEDESDES算法設(shè)計(jì)的優(yōu)點(diǎn)是很多的。如何加強(qiáng)DES的安全性是一個(gè)世紀(jì)感興趣的問(wèn)題。Quisquater等曾建議采用長(zhǎng)達(dá)768bits密鑰的方案。由于已經(jīng)證明DES不能成為群,見(jiàn)

ProofthatDESisnotagroupInAdvancesinCryptology——Crpto’92.Springer——Verlag,NewYork,1993.于是多重DES,尤其是三重DES還在普遍使用。第三頁(yè),共二十九頁(yè),2022年,8月28日(1)二重DES(DoubleDES)給定明文P和兩個(gè)加秘密鑰k1和k2,采用DES對(duì)P進(jìn)行加密E,有密文C=EK2(EK1(P))對(duì)C進(jìn)行解密D,有明文P=DK1(DK2(C))EEPXCK2K1加密圖DDK2K1CXP解密圖第四頁(yè),共二十九頁(yè),2022年,8月28日對(duì)于二重DES的加密,所用密鑰的長(zhǎng)度為

56×2=112bits

這樣是否真正能增強(qiáng)DES的強(qiáng)度呢?問(wèn)題在于下式能否成立:

EK2(EK1(P))=EK3(P)(4.1)DES是一個(gè)從集合A到集合A的一個(gè)映射。其中:

映射DES事實(shí)上可視為對(duì)A的一個(gè)作用,作用方式為置換。所有可能的置換數(shù)為(264)!。然而,DES對(duì)每一個(gè)不同的密鑰只決定唯一的映射。而密鑰數(shù)256<107,(4.1)式不能成立。第五頁(yè),共二十九頁(yè),2022年,8月28日關(guān)于DES不是群的詳細(xì)證明見(jiàn)上面給的文獻(xiàn)。注:二重DES很難抵擋住中間相遇攻擊法(Meet-in-the-MiddleAttack)第六頁(yè),共二十九頁(yè),2022年,8月28日EEPCX由

C=EK2(EK1(P))從圖中可見(jiàn)

X=EK1(P)=DK2(C)K1K2DDCPXK1K2加密解密第七頁(yè),共二十九頁(yè),2022年,8月28日若給出一個(gè)已知的明密文對(duì)(P,C)做:對(duì)256個(gè)所有密鑰K1做對(duì)明文P的加密,得到一張密鑰對(duì)應(yīng)于密文X的一張表;類似地對(duì)256個(gè)所有可能的密鑰K2做對(duì)密文C的解密,得到相應(yīng)的“明文”X。做成一張X與K2的對(duì)應(yīng)表。比較兩個(gè)表就會(huì)得到真正使用的密鑰對(duì)K1,K2。第八頁(yè),共二十九頁(yè),2022年,8月28日對(duì)二重DES的中間相遇攻擊的分析已知,給定一個(gè)明文P,經(jīng)二重DES加密有264個(gè)可能的密文。而二重DES所用密鑰的長(zhǎng)度應(yīng)是112bits,所以選擇密鑰有2112個(gè)可能性。于是對(duì)給定明文P加密成密文有2112/264=248種可能。于是,密文是假的比例約為248-64=2-16。這樣,對(duì)已知明文-密文對(duì)的中間相遇攻擊成功的概率為1-2-16。攻擊用的代價(jià){加密或解密所用運(yùn)算次數(shù)}≦256+256=2112第九頁(yè),共二十九頁(yè),2022年,8月28日(2)帶有雙密鑰的三重DES

(TripleDESwithTwoKeys)Tuchman給出雙密鑰的EDE模式(加密-解密-加密):

C=EK1(DK2(EK1(P)))……對(duì)P加密

P=DK1(EK2(DK1(C)))……對(duì)C解密這種替代DES的加密較為流行并且已被采納用于密鑰管理標(biāo)準(zhǔn)(TheKeyManagerStandardsANSX9.17和ISO8732).第十頁(yè),共二十九頁(yè),2022年,8月28日EDEDEDCBAPPAB

CK1K2K1K1K2K1加密圖解密圖第十一頁(yè),共二十九頁(yè),2022年,8月28日到目前為止,還沒(méi)有人給出攻擊三重DES的有效方法。對(duì)其密鑰空間中密鑰進(jìn)行蠻干搜索,那么由于空間太大為2112=5×1033,這實(shí)際上是不可行的。若用差分攻擊的方法,相對(duì)于單一DES來(lái)說(shuō)復(fù)雜性以指數(shù)形式增長(zhǎng),要超過(guò)1052。注意:1*.Merkle和Hellman設(shè)法創(chuàng)造一個(gè)條件,想把中間相遇攻擊(meet-in-the-middleattack)的方法用于三重DES,但目前也不太成功。2*.雖然對(duì)上述帶雙密鑰的三重DES到目前為止還沒(méi)有好的實(shí)際攻擊辦法,但人們還是放心不下,又建議使用三密鑰的三重DES,此時(shí)密鑰總長(zhǎng)為168bits.

C=EK3(DK2(EK1(P)))第十二頁(yè),共二十九頁(yè),2022年,8月28日2RC5

RC5是對(duì)稱加密算法,由RSA公司的首席科學(xué)家R.Rivest于1994年設(shè)計(jì),1995年正式公開(kāi)的一個(gè)很實(shí)用的加密算法。第十三頁(yè),共二十九頁(yè),2022年,8月28日RC5具有如下的特性:1.適用于軟件或者硬件實(shí)現(xiàn)2.運(yùn)算速度快3.能適應(yīng)于不同字長(zhǎng)的程序(一個(gè)字的bit數(shù)是RC5的一個(gè)參數(shù);不同字長(zhǎng)派生出相異的算法)4.加密的輪數(shù)可變(輪數(shù)是RC5的第二個(gè)參數(shù),這個(gè)參數(shù)用來(lái)調(diào)整加密速度和安全性的程度)5.密鑰長(zhǎng)度是可變的(密鑰長(zhǎng)度是RC5的第三個(gè)參數(shù))6.RC5形式簡(jiǎn)單,易于實(shí)現(xiàn),加密強(qiáng)度可調(diào)節(jié)7.對(duì)記憶度要求不高(使RC5可用于類似SmartCard這類的對(duì)記憶度有限定的器件)8.高保密性(適當(dāng)選擇好參數(shù))9.對(duì)數(shù)據(jù)實(shí)行bit循環(huán)移位(增強(qiáng)抗攻擊能力)第十四頁(yè),共二十九頁(yè),2022年,8月28日對(duì)RC5的系統(tǒng)描述:(1)RC5的參數(shù)

RC5實(shí)際上是由三個(gè)參數(shù)決定的一組加密算法。

參數(shù)定義允許值

w字的bit數(shù)大小。RC5加密16,32,64

的基本單位為2個(gè)字塊

r輪數(shù)0,1,…,255b密鑰字節(jié)的長(zhǎng)度(8-bitbytes)0,1,…,255第十五頁(yè),共二十九頁(yè),2022年,8月28日RC5加密明文塊的長(zhǎng)度為32,64,128bits。并且對(duì)應(yīng)同樣長(zhǎng)度的密文。密鑰長(zhǎng)度為從0到2040bits。一個(gè)特定的RC5表示為

RC5-w/r/bRivest建議使用的標(biāo)注RC5為

RC5-32/12/16(明文分組長(zhǎng)度64,加密輪數(shù)12,密鑰長(zhǎng)度128bits)第十六頁(yè),共二十九頁(yè),2022年,8月28日(2)RC5的密鑰擴(kuò)展對(duì)給定的密鑰K來(lái)說(shuō),經(jīng)過(guò)一些復(fù)合運(yùn)算可產(chǎn)生總數(shù)為t的字密鑰,使得每一輪都分配一對(duì)密鑰。除此之外的非輪運(yùn)算部分也要分配一對(duì)密鑰??傆?jì)產(chǎn)生t=2r+2

個(gè)子密鑰,每個(gè)密鑰的長(zhǎng)度為一個(gè)字長(zhǎng)(wbits)。子密鑰可標(biāo)記在t-字陣列中:

s[0],s[1],…,s[t-1]它為w×t矩陣

這種陣列的產(chǎn)生圖示為:第十七頁(yè),共二十九頁(yè),2022年,8月28日初始化混合轉(zhuǎn)換s[0]S[1]

S[t-1]……L[0]L[1]L[c-1]……K[0]K[1]……K[b-1]S[0]S[1]……S[t-1]r,wByteswordswords第十八頁(yè),共二十九頁(yè),2022年,8月28日將參數(shù)r,w輸入,左面標(biāo)出的t-字陣列是一些偽隨機(jī)bit,按r,w的規(guī)格選入的。然后把b-bits長(zhǎng)的密鑰K[0,…,b-1]轉(zhuǎn)換成c-字陣列L[0,…,c-1](字的bit數(shù)為w,這里c=b×8/w;注意:密鑰長(zhǎng)度為b個(gè)字節(jié))。如果b不是w的整數(shù)倍,那么L右端的空位用0填入。下面描述密鑰生成的細(xì)節(jié):第十九頁(yè),共二十九頁(yè),2022年,8月28日對(duì)于給定的參數(shù)r和w,開(kāi)始初始化運(yùn)算

Pw=Odd((e-2)2w)Qw=Odd((Φ-1)2w)這里

自然對(duì)數(shù)的底)

(黃金分割比率)并且Odd[x]表示最接近x且可左可右的奇整數(shù)。例:Odd[e]=3,Odd[Φ]=1用上述兩個(gè)常數(shù),按下述方式得到初始化的陣列S:

S[0]=PwFori=1tot-1do S[i]=S[i-1]+Qw

其中的加法是模2w的加法運(yùn)算。第二十頁(yè),共二十九頁(yè),2022年,8月28日得到初始化陣列S,然后與最后產(chǎn)生的密鑰陣列L做混合,最終得到子密鑰陣列。注1*.為了增強(qiáng)復(fù)雜性,可對(duì)陣列S,L做多次處理:

i=j=x=y=0do3×max(t,c)times:{S[i]=(S[i]+X+Y)<<<3;

X=S[i];i=(i+1)(modt);L[j]=(L[j]+X+Y)<<<(X+Y);

Y=L[j];j=(j+1)(modc);}2*.Rivest聲稱,這個(gè)擴(kuò)張函數(shù)具有單向性。第二十一頁(yè),共二十九頁(yè),2022年,8月28日(3)RC5的加密整個(gè)加密使用了下述3個(gè)基本運(yùn)算和它們的逆運(yùn)算:模2w加法運(yùn)算,表示為“+”;逐比特異或運(yùn)算,表示為“⊕”;字的循環(huán)左移運(yùn)算:字x循環(huán)左移y比特,表示為

x<<<y

它的逆為循環(huán)右移y比特,表示為

x>>>y如(a0,a1,a2,…,an-1)<<<3=(a3,a4,…,an-1,a0,a1,a2)第二十二頁(yè),共二十九頁(yè),2022年,8月28日加密運(yùn)算圖:明文(2wbits)++⊕⊕<<<<<<++……⊕⊕<<<<<<++密文(2wbits)S[0]Round1S[2]RoundrS[2r]S[1]S[3]S[2r+1]RErRE1LErLE1LE0RE0AB第二十三頁(yè),共二十九頁(yè),2022年,8月28日將明文分組為左右A,B;用變量Lei,Rei參與運(yùn)算程序?yàn)椋?/p>

LE0=A+S[0]RE0=B+S[1]fori=1tordoLEi=((LEi-1⊕REi-1)<<<REi-1)+S[2×i];REi=((REi-1⊕LEi)<<<LEi)+S[2×i+1];第二十四頁(yè),共二十九頁(yè),2022年,8月28日(4)RC5的解密對(duì)兩個(gè)1-字變量LDr和RDr。用變量LDi和RDi從r到1做:

fori=rdownto1doRDi-1=((RDi-S[2*i+1]>>>LDi)⊕LDi);LDi-1=((LDi-S[2*i]>>>RDi-1)⊕RDi-1);B=RD0-S[1];A=LD0-S[0].(5)RC5操作模式見(jiàn)書119頁(yè)-120頁(yè)第二十五頁(yè),共二十九頁(yè),2022年,8月28日明文(2w比特)--⊕⊕>>>>>>--⊕⊕>>>>>>--密文(2w比特)ABS[2r]S[2]S[0]S[1]S[3]S[2r+1]……LDrRDrRoundrRound1LD0RD0RDr-1LDr-1第二十六頁(yè),共二十九頁(yè),2022年,8月28日3RC6分組密碼簡(jiǎn)介被選為21世紀(jì)加密標(biāo)準(zhǔn)算法。RC6是RC5的進(jìn)一步改進(jìn)。像RC5那樣,RC6實(shí)際上是利用數(shù)據(jù)的循環(huán)移位。RC5自1995年公布以來(lái),盡管至今為止還沒(méi)有發(fā)現(xiàn)實(shí)際攻擊的有效手段,然而一些理論攻擊的文章先后也分析出RC5的一些弱點(diǎn)。RC6的加密程序:RC6-w/r/bInput:

溫馨提示

  • 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)論