網(wǎng)絡信息安全第六章_第1頁
網(wǎng)絡信息安全第六章_第2頁
網(wǎng)絡信息安全第六章_第3頁
網(wǎng)絡信息安全第六章_第4頁
網(wǎng)絡信息安全第六章_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

網(wǎng)絡信息安全課件第六章第一頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-062/57本章要點多重加密是將一個加密算法多次使用的技術,明文通過加密算法轉(zhuǎn)化為密文,然后將該密文作為輸入重新執(zhí)行加密算法,該過程可以重復多次。三重DES(3DES)在三個階段使用DES算法,共用到兩組或三組密鑰。選擇工作模式是一項增強密碼算法或者使算法適應具體應用的技術。對稱密碼有5種工作模式,電碼本模式、密文分組鏈接模式、密文反饋模式、輸出反饋模式和計數(shù)器模式。流密碼是一種對稱密碼算法,其輸出密文是由輸入明文逐位或者逐字節(jié)產(chǎn)生的,RC4是應用最廣泛的一種流密碼。第二頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-063/576.1多重加密與三重DES算法尋找代替DES的新密碼的理由是顯然的密鑰的窮舉攻擊是可行的AES是一種新的安全的密碼在AES之前,還可以用DES進行多次加密,且使用多個密鑰三重DES(Triple-DES)被廣泛接受第三頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-064/576.1.1雙重DES多次加密的最簡單形式是進行兩次加密,每次使用不同的密鑰C=EK2(EK1(P))P=DK1(DK2(C))這種方法的密鑰長度是56x2=112位雖然雙重DES對應的映射與單DES對應的映射不同,但是有中途相遇攻擊“meet-in-the-middle”只要連續(xù)使用密碼兩次,這種攻擊總是有效因為X=EK1(P)=DK2(C)用所有可能的密鑰加密明文P并把結果存儲起來然后用所有可能的密鑰解密密文C,尋找匹配的X值因此復雜度只有O(256)第四頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-065/57雙重DES和三重DES雙重DES(DoubleDES)給定明文P和加密密鑰K1和K2,加密:C=EK2[EK1[P]]解密:P=DK1[DK2[C]]密鑰長度為56x2=112位存在中途相遇攻擊問題第五頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-066/57這種攻擊對使用兩次加密的分組密碼都有效

C=EK2[EK1[P]],則X=EK1[P]=DK2[C]若已知(P,C),則對256個可能的K1加密P,結果存入表中,按X值排序?qū)?56個可能的K2解密C,在表中尋找匹配如果產(chǎn)生匹配,則用一個新的明文密文對檢測所得兩個密鑰如果兩密鑰產(chǎn)生正確的密文,則接受為正確密鑰對任意給定的明文P,雙重DES產(chǎn)生的密文有264可能,密鑰空間為2112。對給定明文P,可產(chǎn)生給定密文C的密鑰的個數(shù)平均為2112/264=248。上述攻擊過程對第一個(P,C)對將產(chǎn)生248個錯誤的結果,而對第二個(P,C)對,錯誤結果的概率就降為248-64=2-16,即中途相遇攻擊使用兩組已知明密文對就可以檢測到正確密鑰的概率是1-2-16,攻擊雙重DES,工作量僅為256,與攻擊單DES所需的255差不多。中途相遇攻擊(Meet-in-the-MiddleAttack)第六頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-067/576.1.2使用兩個密鑰的三重DES使用兩個密鑰進行三次加密:E-D-EsequenceC=EK1[DK2[EK1[P]]如果K1=K2,則相當于單次DES已被用于密鑰管理標準ANSIX9.17和ISO8732當前還沒有對三重DES的可行攻擊方法第七頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-068/576.1.3使用三個密鑰的三重DES雖然對于使用兩個密鑰的Triple-DES還沒有實際的成功攻擊,但是仍然令人有些擔心因此可以考慮使用三個密鑰的Triple-DES,這樣,密鑰的長度就是168位C=EK3[DK2[EK1[P]]]使用三個密鑰的Triple-DES如今已被廣泛采用,如PGP,S/MIME當然還有使用更多重DES的,如5DES第八頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-069/576.2分組密碼的工作模式第九頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0610/57電子密碼本模式ElectronicCodebook,ECB明文分成64的分組進行加密,必要時填充,每個分組用同一密鑰加密,同樣明文分組加密得相同密文第十頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0611/57ECB模式特別適合數(shù)據(jù)較少的情況,如安全傳輸DES密鑰一段明文消息中若有幾個相同的明文組,則密文也將出現(xiàn)幾個相同的片段對于很長的消息,ECB是不安全的,如果消息是非常結構化的,密碼分析可能利用其結構特征來破解ECB的弱點來源于其加密過的密文分組是互相獨立的ECB模式的局限性第十一頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0612/57密文分組鏈接模式CipherBlockChaining(CBC)加密輸入是當前明文分組和前一密文分組的異或,形成一條鏈,使用相同的密鑰,這樣每個明文分組的加密函數(shù)輸入與明文分組之間不再有固定的關系第十二頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0613/57CBC的優(yōu)點和局限每個密文分組依賴于所有明文分組明文消息中的任何一點變化都會影響所有的密文分組發(fā)送方和接收方需要共享初始向量InitialValue(IV)如果IV被明文傳送,則攻擊者可以改變第一個分組的某些位,然后預先改變IV中的某些位,則接收者收到的P1也就相應改變了因此,IV必須是一個固定的值或者必須用ECB方式在消息之前加密傳送在消息的最后,還要處理不夠長度的分組

可以填充已知非數(shù)據(jù)值,或者在最后一塊補上填充位長度eg.[b1b2b300005]<-3databytes,then5bytespad+count

第十三頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0614/57CBC的優(yōu)點和局限兩種計算IV的方法:用加密函數(shù)加密一個時變值,所用密鑰和明文加密所用密鑰相同。這個時變值對每次加密運算來說必須唯一。例如:時變值可以是一個計數(shù)器,一個時間戳或者消息數(shù)目。第二種方法是用隨機數(shù)發(fā)生器產(chǎn)生一個隨機數(shù)分組。第十四頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0615/57是一種將DES轉(zhuǎn)化成流密碼的技術,不再要求報文被填充成整個分組,可以實時運行,如果要傳輸一個字符流,每個字符都可以使用面向字符的流密碼加密后立即傳輸。加密:加密函數(shù)的輸入是一個64位的移位寄存器,產(chǎn)生初始向量IV。加密函數(shù)高端j位與明文P1的第一單元異或,產(chǎn)生j位密文C1進入移位寄存器低端,繼續(xù)加密,與P2輸入異或,如此重復直到所有明文單元都完成加密。解密:采用相同方案,但是使用加密函數(shù)而非解密函數(shù)。密碼反饋模式CipherFeedBack(CFB)第十五頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0616/57第十六頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0617/57密碼反饋模式CipherFeedBack(CFB)解密:采用相同方案,但是使用加密函數(shù)而非解密函數(shù)。設MSNs(X)表示X的最左邊s位。則第十七頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0618/57CFB模式的優(yōu)點和局限當數(shù)據(jù)以位或字節(jié)形式到達時使用都是適當?shù)淖钔ㄓ玫氖橇髅艽a形式第十八頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0619/57輸出反饋模式OutputFeedBack(OFB)結構上類似CFB,但是OFB中加密函數(shù)輸出被反饋回移位寄存器,CFB中是密文單元被反饋回移位寄存器。優(yōu)點是傳輸中的比特差錯不會傳播,缺點是比CFB更容易受報文流篡改攻擊。輸出反饋模式OutputFeedBack(OFB)第十九頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0620/57第二十頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0621/57OFB的優(yōu)點和局限OFB的一個優(yōu)點是傳輸過程中在某位上發(fā)生的錯誤不會影響到其他位。比如,C1中有1位發(fā)生了錯誤,只會影響到P1的恢復,后續(xù)的明文單元不受影響。OFB的缺點是,抗消息流篡改攻擊的能力不如CFB。即密文中的某位取反,恢復出的明文相應位也取反第二十一頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0622/57Counter(CTR)是一種新模式,雖然早就提出來了與OFB很像,但是加密的是計數(shù)器的值而不是任何反饋回來的值每一個明文分組都必須使用一個不同的密鑰和計數(shù)器值,決不要重復使用Ci=PiXOROi

Oi=DESK1(i)可以用于高速網(wǎng)絡加密中計數(shù)器模式Counter(CRT)第二十二頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0623/57Counter(CTR)第二十三頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0624/57CTR的優(yōu)點和局限高效可以做并行加密對高速鏈路的突發(fā)數(shù)據(jù)加密尤其有效可以對被加密的分組進行隨機存取相當安全簡潔必須決不重復使用密鑰和計數(shù)器值第二十四頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0625/576.3流密碼和RC4按位處理明文消息(asastream)典型做法是用一個偽隨機流密鑰與明文按位異或流密鑰的隨機性完全摧毀了明文消息的統(tǒng)計特性Ci=MiXORStreamKeyi

不能重復使用流密鑰,不然系統(tǒng)可能被破解第二十五頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0626/57流密碼的結構第二十六頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0627/57流密碼設計方面的一些考慮無重復的長周期統(tǒng)計上是隨機的依賴于足夠長的密鑰線性復雜性要大對于相關性要有免疫性擾亂擴散采用高度非線性的布爾函數(shù)第二十七頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0628/576.3.2RC4算法由RSA在1987提出RonRivest設計,簡單且高效密鑰長度可變,面向字節(jié)的流密碼使用廣泛(webSSL/TLS,wirelessWEP)對所有8位的值以密鑰實現(xiàn)隨機置換用置換加密輸入消息,每次一個字節(jié)

第二十八頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0629/57RC4密鑰安排

從數(shù)組S開始,S為{0..255}使用密鑰充分進行變換S形成密碼的內(nèi)在狀態(tài)internalstate密鑰k的長度為l字節(jié)

fori=0to255doS[i]=ij=0fori=0to255doj=(j+S[i]+k[imodl])(mod256)swap(S[i],S[j])第二十九頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0630/57RC4的加密加密過程是繼續(xù)進行數(shù)組值的置換如果密鑰K的長度是256字節(jié),則將K賦予臨時向量T,否則將K的值keylen賦予T的前keylen個元素與消息的下一個字節(jié)異或,進行加解密i=j=0foreachmessagebyteMii=(i+1)(mod256)j=(j+S[i])(mod256)swap(S[i],S[j])t=(S[i]+S[j])(mod256)Ci=MiXORS[t]第三十頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0631/57第三十一頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0632/57RC4的安全性可以抵御已知的各種攻擊加密結果是非常“非線性”的RC4是流密碼,決不重復使用密鑰用于為802.11無線局域網(wǎng)提供安全性的WEP協(xié)議,易受一種特殊攻擊,問題不在RC4本身,而是RC4中輸入的密鑰的產(chǎn)生途徑有漏洞第三十二頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0633/57RC5RC5是RonaldRivest設計的一種對稱加密算法,具有如下特點適于軟件和硬件實現(xiàn)快速:設計成面向字的簡單算法,加快運算速度可用于字長不同的處理器迭代次數(shù)可變密鑰長度可變簡單,易于實現(xiàn)和確定算法強度對存儲量要求低安全性高與數(shù)據(jù)相關的循環(huán)第三十三頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0634/57RC5密碼RC5實際上是一個系列的密碼RC5-w/r/bw=wordsizeinbits(16/32/64)nbdata=2wr=numberofrounds(0..255)b=numberofbytesinkey(0..255)常見的版本形式是RC5-32/12/16i.e.,32-bitwordssoencrypts64-bitdatablocksusing12roundswith16bytes(128-bit)secretkey第三十四頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0635/57RC5KeyExpansionRC5使用2r+2子密鑰字(w-bits)子密鑰存儲在數(shù)組S[i],i=0..t-1密鑰產(chǎn)生過程包括將S初始化成一個固定長度的偽隨機數(shù),基于常數(shù)e和phi字節(jié)密鑰復制到c-word數(shù)組L對L和S的混合操作最終形成S數(shù)組第三十五頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0636/57RC5KeyExpansion第三十六頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0637/57RC5Encryption將輸入分成A和B兩部分L0=A+S[0];R0=B+S[1];fori=1tordoLi

=((Li-1XORRi-1)<<<Ri-1)+S[2xi];Ri

=((Ri-1XORLi)<<<Li)+S[2xi+1];每一輪就像是2DES的輪非線性主要來自于循環(huán)移位需要適當?shù)妮啍?shù)(e.g.12-16)第三十七頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0638/57第三十八頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0639/57RC5ModesRFC2040定義了RC5使用的4種模式RC5BlockCipher,ECB模式RC5-CBC,CBC模式RC5-CBC-PAD,CBC加字節(jié)填充的模式RC5-CTS,CBC模式的一種變形,采樣密文挪用方法使得密文大小保持與原始態(tài)一致第三十九頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0640/57RC5密文挪用模式第四十頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0641/57分組密碼的特點變長的密鑰、分組大小、輪數(shù)混合各種操作,數(shù)據(jù)和密鑰依賴循環(huán)移位密碼依賴S盒更加復雜的密鑰處理過程每一輪都對全部數(shù)據(jù)進行操作多樣性的非線性功能第四十一頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0642/57Blowfish,1993年由BruceSchneier提出,對稱分組密碼,特性:快速:在32位處理器上加密每字節(jié)18時鐘周期緊湊:可在少于5K的內(nèi)存上運行簡單:結構簡單、容易實現(xiàn)可變的安全性:密鑰長度可變,從32位到448位子密鑰和S盒的產(chǎn)生使用32位可變到448位的密鑰,存儲在K數(shù)組中:Kj,用來產(chǎn)生18個32-bit的子密鑰,存儲在P數(shù)組中:Pj,4個8x32的包含1024個32位項的S盒,存儲在Si,jBlowfish第四十二頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0643/57產(chǎn)生P數(shù)組和S數(shù)組的步驟用常數(shù)π的小數(shù)部分初始化P數(shù)組和4個S盒對P數(shù)組和K數(shù)組逐位異或使用當前的P和S數(shù)組對64位分組加密,把P1和P2用加密的輸出替代使用當前的P和S數(shù)組對第三步的輸出加密,用所得密文替代P3和P4重復這個過程以更新P和S數(shù)組的所有元素,每一步都使用不斷變化的Blowfish算法的輸出,總共執(zhí)行512次加密算法Blowfish對密鑰經(jīng)常變化的應用不適合,也不適合存儲空間有限的應用BlowfishKeySchedule第四十三頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0644/57Blowfish的加密兩個基本操作:模232的加和逐位異或數(shù)據(jù)被分成左右兩部分L0&R0fori=1to16doRi

=Li-1XORPi;Li

=F[Ri]XORRi-1;L17=R16XORP18;R17=L16XORi17;這里:F[a,b,c,d]=((S1,a

+S2,b)XORS3,c)+S4,aBlowfishEncryption第四十四頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0645/57第四十五頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0646/57第四十六頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0647/57Blowfish的S盒依賴于密鑰,子密鑰和S盒通過重復使用Blowfish本身產(chǎn)生,使得各比特徹底糾纏在一起,密碼分析非常困難在每一循環(huán)中對數(shù)據(jù)的兩部分進行操作,增大了密碼強度通過選擇適當?shù)拿荑€長度(最長448位),對窮舉攻擊來說,Blowfish幾乎是不可破的Blowfish的算法執(zhí)行是很快的所以,Blowfish可能是最難破譯的常規(guī)加密算法。討論第四十七頁,共五十六頁,編輯于2023年,星期三2023/6/13現(xiàn)代密碼學理論與實踐-0648/57國際數(shù)據(jù)加密算法IDEA(InternationalDataEncryptionAlgorithm)1990年由瑞士蘇黎世聯(lián)邦工業(yè)大學的LaiXuejia和JamesMessey提出,1992年最終完成。算法形式同DES,用循環(huán)加密方式。設計原理使用128位密鑰加密64位明文分組,窮舉分析需要1038次試探,目前尚無破譯方法。算法本身傾向于軟件實現(xiàn),加密速度快。密碼強度分組長度:

溫馨提示

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

評論

0/150

提交評論