網(wǎng)絡(luò)安全11消息認證碼_第1頁
網(wǎng)絡(luò)安全11消息認證碼_第2頁
網(wǎng)絡(luò)安全11消息認證碼_第3頁
網(wǎng)絡(luò)安全11消息認證碼_第4頁
網(wǎng)絡(luò)安全11消息認證碼_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

單純的加解密算法無法保證抵抗下述攻擊偽裝內(nèi)容修改順序修改計時修改發(fā)送方否認接收方否認消息認證碼數(shù)字簽名不屬于機密性范疇,屬于數(shù)據(jù)完整性范疇

Chapter12

消息認證碼《計算機與網(wǎng)絡(luò)安全》

消息認證需求消息認證函數(shù)消息認證碼基于Hash函數(shù)的MAC基于分組密碼的MAC:DAA和CMAC2023/2/1西安電子科技大學計算機學院32023/2/1西安電子科技大學計算機學院4§12.1對認證的需求可能的攻擊:1.泄密:將消息透漏給未授權(quán)方2.傳輸分析:分析通信雙方的通信模式3.偽裝:欺詐源向網(wǎng)絡(luò)中插入一條消息4.內(nèi)容修改:對消息內(nèi)容的修改5.順序修改:對通信雙方消息順序的修改6.計時修改:對消息的延時和重播7.發(fā)送方否認:對消息否認8.接收方否認:對消息否認2023/2/1西安電子科技大學計算機學院5消息認證:驗證所收到的消息確實是來自真實的發(fā)送方且未被修改的消息,它也可驗證消息的順序和及時性。數(shù)字簽名:是一種認證技術(shù),其中的一些方法可用來抗發(fā)送方否認攻擊。(接收者可驗證但不能偽造)消息認證數(shù)字簽名消息認證函數(shù)是實現(xiàn)消息認證的基礎(chǔ)其工作原理和通信領(lǐng)域常見的差錯控制編碼函數(shù)類似,都是通過對原始報文進行某種運算,產(chǎn)生一個定長的輸出,這個輸出是原始報文的“冗余信息”,即消息認證碼,有時也被稱為密碼校驗和。2023/2/1西安電子科技大學計算機學院6常用的消息認證函數(shù)包括如下兩類:①利用加密函數(shù)作為消息認證函數(shù):這種方法把原始報文加密后產(chǎn)生的密文作為它的消息認證碼;②專用的消息認證函數(shù):以原始報文和密鑰作為輸入,產(chǎn)生定長的輸出,這個輸出就是原始報文的消息認證碼??梢岳眠\行于CBC模式下的常規(guī)加密算法或帶密鑰的Hash函數(shù)(HMAC)來構(gòu)造消息認證函數(shù)。2023/2/1西安電子科技大學計算機學院72023/2/1西安電子科技大學計算機學院8§12.2認證函數(shù)兩層:產(chǎn)生認證符+驗證產(chǎn)生認證符的函數(shù)類型:消息加密:消息的密文作為認證符。消息認證碼:消息和密鑰的公開函數(shù),產(chǎn)生定長的值作為認證符。MAC:messageauthenticationcode

Hash函數(shù):將任意長消息映射為定長的hash值作為認證符。2023/2/1西安電子科技大學計算機學院912.2.1消息加密消息加密也能提供一種認證的方法對稱密碼,既可以提供認證又可以提供保密性,但不是絕對的。只有消息具有適當?shù)慕Y(jié)構(gòu)、冗余或含有校驗和,接收方才可能對消息的任何變化進行檢測。否則,認證難以完成。嚴格意義上說,單獨使用加密技術(shù)無法實現(xiàn)消息認證。(不推薦)2023/2/1西安電子科技大學計算機學院102023/2/1西安電子科技大學計算機學院112023/2/1西安電子科技大學計算機學院12消息加密公鑰體制中:加密不能提供對發(fā)送方的認證(公鑰是公開的)發(fā)送方可用自己的私鑰進行簽名接收方可用發(fā)送方的公鑰進行驗證保密性和可認證性2023/2/1西安電子科技大學計算機學院132023/2/1西安電子科技大學計算機學院142023/2/1西安電子科技大學計算機學院152023/2/1西安電子科技大學計算機學院1612.2.2消息認證碼(MAC)一種認證技術(shù)利用密鑰來生成一個固定長度的短數(shù)據(jù)塊(MAC),并將該數(shù)據(jù)塊附加在消息之后。MAC的值依賴于消息和密鑰MAC=Ck(M)=C(M,K)MAC函數(shù)于加密類似,但MAC算法不要求可逆性,而加密算法必須是可逆的。接收方進行同樣的MAC碼計算并驗證是否與發(fā)送過來的MAC碼相同2023/2/1西安電子科技大學計算機學院17MAC特性MAC碼是一個密碼校驗和 MAC=CK(M)=C(K,M)消息M的長度是可變的密鑰K是要保密的,且收發(fā)雙方共享。產(chǎn)生固定長度的認證碼MAC算法是一個多對一的函數(shù)多個消息對應同一MAC值但是找到同一MAC值所對應的多個消息應該是困難的。2023/2/1西安電子科技大學計算機學院18MessageAuthenticationCode2023/2/1西安電子科技大學計算機學院19若相同,則有:接收方可以相信消息未被修改。接收方可以相信消息來自真正的發(fā)送方。接收方可以確信消息中含有的序列號是正確的。為什么需要使用MAC?有些情況只需要認證(如廣播)文檔的持續(xù)保護(例如解密后的保護)……由于收發(fā)雙方共享密鑰,所以MAC不能提供數(shù)字簽名2023/2/1西安電子科技大學計算機學院20對MACs的要求:抗多種攻擊(例如窮舉密鑰攻擊)且滿足:已知一條消息和MAC,構(gòu)造出另一條具有同樣MAC的消息是不可行的MACs應該是均勻分布的MAC應該依賴于消息的所有比特位2023/2/1西安電子科技大學計算機學院212023/2/1西安電子科技大學計算機學院222023/2/1西安電子科技大學計算機學院23§12.3HMAC密碼hash函數(shù)作為MAC:不用分組密碼,而用hash函數(shù)來產(chǎn)生MAC因為hash函數(shù)一般都較快沒有出口限制,(分組密碼有出口限制)hash函數(shù)不依賴于密鑰,所以不能直接用于MAC建議:KeyedHash=Hash(Key|Message)2023/2/1西安電子科技大學計算機學院24利用帶密鑰的Hash函數(shù)實現(xiàn)消息認證2023/2/1西安電子科技大學計算機學院25當前獲得廣泛應用的構(gòu)造帶密鑰的Hash函數(shù)的方案是HMAC(keyed-hashingformessageauthenticationcode),它是Bellare等人于1996年提出,并于1997年作為RFC2104標準發(fā)表,并被很多因特網(wǎng)協(xié)議(如IPSEC、SSL)所使用。HMAC算法利用已有的Hash函數(shù),使用不同的Hash函數(shù),就可以得到不同的HMAC,例如選用MD5時的HMAC記為HMAC-MD5,選用SHA-1時的HMAC記為HMAC-SHA1。HMAC的設(shè)計目標是:

2023/2/1西安電子科技大學計算機學院26①可不經(jīng)修改而使用現(xiàn)有的Hash函數(shù),特別是那些易于軟件實現(xiàn)的、源代碼可方便獲取且免費使用的Hash函數(shù);②其中嵌入的Hash函數(shù)可易于替換為更快或更安全的Hash函數(shù);③保持嵌入的Hash函數(shù)的最初性能,不因用于HMAC而使其性能降低;④以簡單方式使用和處理密鑰;⑤在對嵌入的Hash函數(shù)合理假設(shè)的基礎(chǔ)上,易于分析HMAC用于鑒別時的密碼強度。2023/2/1西安電子科技大學計算機學院27HMAC概覽⊕⊕2023/2/1西安電子科技大學計算機學院28⊕⊕2023/2/1西安電子科技大學計算機學院29HMAC作為RFC2104HMACK=Hash[(K+XORopad)|| Hash[(K+XORipad)||M)]]其中K+

為在K左邊填充0后所得的b位長的結(jié)果(b為每一消息分組的位數(shù))opad,ipad都是指定的填充常量多執(zhí)行了3次hash壓縮函數(shù)算法可用于MD5,SHA-1,RIPEMD-160中的任何一個2023/2/1西安電子科技大學計算機學院30HMAC算法的具體執(zhí)行步驟如下:①在密鑰K的右邊填充一些0,使其成為長度為b比特的比特串,記為K+;②計算Si=K+ipad,其中ipad(innerpad)是HMAC算法中規(guī)定的一個長度為b比特的比特模式串,它等于將00110110(16進制的36)重復b/8次后得到的比特串;③把HMAC的輸入報文x=x1x2…xL附加在Si的右端,得到Si||x=Si||x1x2…xL,將該比特串作為Hash函數(shù)h的輸入,得到l比特的輸出h(Si||x);④計算So=K+opad,其中opad(outterpad)是HMAC算法中規(guī)定的另一個長度為b比特的比特模式串,它等于將01011100(16進制的5C)重復b/8次后得到的比特串;⑤將第3步得到的h(Si||x)填充到b比特后附加在So的右端,并以該比特串作為Hash函數(shù)h的輸入,得到l比特的輸出;⑥將第5步的輸出作為HMAC算法的最終輸出結(jié)果,即為消息x的消息認證碼HMACk(x)。

2023/2/1西安電子科技大學計算機學院31建立在嵌入Hash函數(shù)基礎(chǔ)上的所有MAC,其安全性在某種程度上都依賴于該Hash函數(shù)的強度。對于HMAC,可以給出HMAC的強度與所嵌入Hash函數(shù)強度之間的關(guān)系。Bellare等人(1996年)已經(jīng)證明,如果攻擊者已知若干(時間、消息-MAC)對,則成功攻擊HMAC的概率等價于對所嵌入Hash函數(shù)的下列攻擊之一:①即使對于攻擊者而言,IV是隨機的、秘密的和未知的,攻擊者也能計算Hash函數(shù)的壓縮函數(shù)的輸出。②即使IV是隨機的和秘密的,攻擊者也能找到Hash函數(shù)的碰撞。2023/2/1西安電子科技大學計算機學院32HMAC的安全性HMAC的安全性依賴于hash算法的安全性攻擊HMAC需要下列之一:對密鑰進行窮舉攻擊生日攻擊從速度與安全制約,選擇恰當?shù)膆ash函數(shù)2023/2/1西安電子科技大學計算機學院3312.6基于分組密碼的MACDAA:數(shù)據(jù)認證算法CMAC:基于密碼的消息認證碼2023/2/1西安電子科技大學計算機學院34用對稱密碼產(chǎn)生MACs采用分組密碼的鏈接工作模式,并把最后分組作為MACDataAuthenticationAlgorithm(DAA)

是一個廣泛使用的數(shù)據(jù)認證算法,基于DES-CBC(FIPSPUB113,ANSIX9.17)IV=0且最后一個分組用0填充其后以補足64位分組用DES的密文分組鏈接模式CBC解密消息把最后一個分組作為MAC發(fā)送或者取最后分組的左邊Mbits(16≤M≤64)但是對于安全性來說,最終的MAC還是太小了2023/2/1西安電子科技大學計算機學院35DataAuthenticationAlgorithm基于DES實現(xiàn)的數(shù)據(jù)認證算法2023/2/1西安電子科技大學計算機學院36①置IV=0,并把報文的最后一個分組用0填充成64比特;②采用DES的CBC模式加密報文;③拋棄加密的中間結(jié)果,只將最后一組密文(或最后一組密文的左邊M(16≤M≤64)比特)作為原始報文的MAC。2023/2/1西安電子科技大學計算機學院3712.6.2CMAC適用于AES和3DES的CMAC為n個消分組,k位加密密鑰和n位的常數(shù)K1T為消息認證碼,也稱為tag;Tlen是T的位長度;MSBs(X)是位串的X最左邊的s位。12.7認證加密2023/2/1西安電子科技大學計算機學

溫馨提示

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

評論

0/150

提交評論