




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
單純的加解密算法無法保證抵抗下述攻擊偽裝內容修改順序修改計時修改發送方否認接收方否認消息認證碼數字簽名不屬于機密性范疇,屬于數據完整性范疇Chapter12消息認證碼《計算機與網絡安全》消息認證需求消息認證函數消息認證碼基于Hash函數的MAC基于分組密碼的MAC:DAA和CMAC2023/9/173西安電子科技大學計算機學院§12.1
對認證的需求2023/9/174西安電子科技大學計算機學院可能的攻擊:1.泄密:將消息透漏給未授權方2.傳輸分析:分析通信雙方的通信模式3.偽裝:欺詐源向網絡中插入一條消息4.內容修改:對消息內容的修改5.順序修改:對通信雙方消息順序的修改6.計時修改:對消息的延時和重播7.發送方否認:對消息否認8.接收方否認:對消息否認消息認證:驗證所收到的消息確實是來自真實的發送方且未被修改的消息,它也可驗證消息的順序和及時性。數字簽名:是一種認證技術,其中的一些方法可用來抗發送方否認攻擊。(接收者可驗證但不能偽造)消息認證數字簽名2023/9/175西安電子科技大學計算機學院消息認證函數是實現消息認證的基礎其工作原理和通信領域常見的差錯控制編碼函數類似,
都是通過對原始報文進行某種運算,產生一個定長的輸
出,這個輸出是原始報文的“冗余信息”,即消息認證碼,有時也被稱為密碼校驗和。2023/9/176西安電子科技大學計算機學院常用的消息認證函數包括如下兩類:①利用加密函數作為消息認證函數:這種方法把原始報文加密后產生的密文作為它的消息認證碼;②專用的消息認證函數:以原始報文和密鑰作為輸入,產生定長的輸出,這個輸出就是原始報文的消息認證碼。可以利用運行于CBC模式下的常規加密算法或帶密鑰的Hash函數(HMAC)來構造消息認證函數。2023/9/177西安電子科技大學計算機學院§12.2
認證函數2023/9/178西安電子科技大學計算機學院兩層:產生認證符+驗證產生認證符的函數類型:消息加密:消息的密文作為認證符。消息認證碼:消息和密鑰的公開函數,產生定長的值作為認證符。MAC:message
authentication
codeHash函數:將任意長消息映射為定長的hash值作為認證符。12.2.1
消息加密2023/9/179西安電子科技大學計算機學院消息加密也能提供一種認證的方法對稱密碼,既可以提供認證又可以提供保密性,但不是絕對的。只有消息具有適當的結構、冗余或含有校驗和,接收方才可能對消息的任何變化進行檢測。否則,認證難以完成。嚴格意義上說,單獨使用加密技術無法實現消息認證。(不推薦)2023/9/1710西安電子科技大學計算機學院2023/9/1711西安電子科技大學計算機學院消息加密2023/9/1712西安電子科技大學計算機學院公鑰體制中:加密不能提供對發送方的認證(公鑰是公開的)發送方可用自己的私鑰進行簽名接收方可用發送方的公鑰進行驗證保密性和可認證性2023/9/1713西安電子科技大學計算機學院2023/9/1714西安電子科技大學計算機學院2023/9/1715西安電子科技大學計算機學院12.2.2
消息認證碼
(MAC)2023/9/1716西安電子科技大學計算機學院一種認證技術利用密鑰來生成一個固定長度的短數據塊(MAC),并將該數據塊附加在消息之后。MAC的值依賴于消息和密鑰MAC
=Ck(M)=C(M,K)MAC函數于加密類似,但MAC算法不要求可逆性,而加密算法必須是可逆的。接收方進行同樣的MAC碼計算并驗證是否與發送過來的MAC碼相同MAC
特性2023/9/1717西安電子科技大學計算機學院MAC碼是一個密碼校驗和
MAC=CK(M)=C(K,M)消息M的長度是可變的密鑰K是要保密的,且收發雙方共享。產生固定長度的認證碼MAC算法是一個多對一的函數多個消息對應同一MAC值但是找到同一MAC值所對應的多個消息應該是困難的。Message
Authentication
Code2023/9/1718西安電子科技大學計算機學院若相同,則有:接收方可以相信消息未被修改。接收方可以相信消息來自真正的發送方。接收方可以確信消息中含有的序列號是正確的。為什么需要使用MAC?有些情況只需要認證(如廣播)文檔的持續保護(例如解密后的保護)……由于收發雙方共享密鑰,所以MAC不能提供數字簽名2023/9/1719西安電子科技大學計算機學院對MACs的要求:抗多種攻擊(例如窮舉密鑰攻擊)且滿足:2023/9/1720西安電子科技大學計算機學院1.已知一條消息和MAC,構造出另一條具有同樣MAC的消息是不可行的MACs應該是均勻分布的MAC應該依賴于消息的所有比特位2.3.2023/9/1721西安電子科技大學計算機學院2023/9/1722西安電子科技大學計算機學院§12.3
HMAC2023/9/1723西安電子科技大學計算機學院密碼hash函數作為MAC:不用分組密碼,而用hash函數來產生MAC因為hash函數一般都較快沒有出口限制,(分組密碼有出口限制)hash函數不依賴于密鑰,所以不能直接用于MAC建議:KeyedHash
=
Hash(
Key
|
Message
)利用帶密鑰的Hash函數實現消息認證2023/9/1724西安電子科技大學計算機學院當前獲得廣泛應用的構造帶密鑰的Hash函數的方案是HMAC(keyed-hashing
for
message
authentication
code),它是Bellare等人于1996年提出,并于1997年作為RFC2104
標準發表, 并被很多因特網協議(如SSL)所使用。HMAC算法利用已有的Hash函數,使用不同的Hash函數,就可以得到不同的HMAC,例如選用MD5時的HMAC記為HMAC-MD5,選用SHA-1時的HMAC記為HMAC-SHA1。2023/9/1725西安電子科技大學計算機學院IPSECHMAC的設計目標是:2023/9/1726西安電子科技大學計算機學院①可不經修改而使用現有的Hash函數,特別是那些易于軟件實現的、源代碼可方便獲取且免費使用的Hash函數;②其中嵌入的Hash函數可易于替換為更快或更安全的Hash函數;③保持嵌入的Hash函數的最初性能,不因用于HMAC而使其性能降低;④以簡單方式使用和處理密鑰;⑤在對嵌入的Hash函數合理假設的基礎上,易于分析HMAC用于鑒別時的密碼強度。HMAC
概覽⊕⊕2023/9/1727西安電子科技大學計算機學院2023/9/17
西安電子科技大學計算機學院
28⊕⊕HMAC2023/9/1729西安電子科技大學計算機學院作為RFC2104HMACK
=
Hash[(K+
XORopad)||Hash[(K+
XOR
ipad)||M)]]其中K+為在K左邊填充0
后所得的b位長的結果(
b為每一消息分組的位數)opad,
ipad
都是指定的填充常量多執行了3次hash壓縮函數算法可用于MD5,SHA-1,RIPEMD-160中的任何一個HMAC算法的具體執行步驟如下:2023/9/1730西安電子科技大學計算機學院①在密鑰K的右邊填充一些0,使其成為長度為b比特的比特串,記為K+;i+②
計算
S
=
K
⊕
ipad
,其中
ipad
(
inner pad
)是
HMAC
算法中個長度為b比特的比特模式串,它等于將00110110(16進制的36)重復b/8次后得到的比特串;③把HMAC
的輸入報文x
=x1
ix
2
…
x
L
附加在
S
的右端,得到
Sx2…xL,將該比特串作為Hash函數h的輸入,得到l比特的輸出h
(Si||x);o+④
計算
S
=
K
⊕
opad
,其中
opad
(
outter pad
)是
HMAC
算法另一個長度為b比特的比特模式串,它等于將01011100(16進制的5C)重復b/8次后得到的比特串;⑤將第3步得到的h(Si
||x)填充到b比特后附加在So
的右端,并以該比作為Hash函數h的輸入,得到l比特的輸出;⑥
將第
5
步的輸出作為
HMAC
算法的最終輸出結果,即為消息
x
認證碼HMACk(x)。
建立在嵌入Hash
函數基礎上的所有MAC
,其安全性在某種程度上都依賴于該Hash函數的強度。對于HMAC,可以給出HMAC的強度與所嵌入Hash函數強度之間的關系。Bellare等人(1996年)已經證明,如果攻擊者已知若干(時間、消息-MAC)對,則成功攻擊HMAC的概率等價于對所嵌入Hash函數的下列攻擊之一:①即使對于攻擊者而言,IV是隨機的、秘密的和未知的,攻擊者也能計算Hash函數的壓縮函數的輸出。②即使IV是隨機的和秘密的,攻擊者也能找到Hash函數的碰撞。2023/9/1731西安電子科技大學計算機學院HMAC
的安全性2023/9/1732西安電子科技大學計算機學院HMAC的安全性依賴于hash算法的安全性攻擊HMAC需要下列之一:對密鑰進行窮舉攻擊生日攻擊從速度與安全制約,選擇恰當的hash函數12.6
基于分組密碼的MAC2023/9/1733西安電子科技大學計算機學院DAA:數據認證算法CMAC:基于密碼的消息認證碼用對稱密碼產生MACs2023/9/1734西安電子科技大學計算機學院采用分組密碼的鏈接工作模式,并把最后分組作為MACDataAuthenticationAlgorithm(DAA)是一個廣泛使用的數據認證算法,基于DES-CBC
(
FIPSPUB113,ANSI
X9.17)IV=0且最后一個分組用0填充其后以補足64位分組用DES的密文分組鏈接模式CBC解密消息把最后一個分組作為MAC發送或者取最后分組的左邊M
bits
(16≤M≤64)但是對于安全性來說,最終的MAC還是太小了Data
Authentication
Algorithm基于DES實現的數據認證算法2023/9/1735西安電子科技大學計算機學院①置IV=0,并把報文的最后一個分組用0填充成64比特;?采用DES的CBC模式加密報文;③拋棄加密的中間結果,只將最后一組密文(或最后一組密文的左邊M
(16≤M≤64)比特)作為原始報文的MAC。2023/9/1736西安電子科技大學計算機學院12.6.2
CMAC適用于AES和3DES的CMAC為n個消分組,k位加密密鑰和n位的常數K1T為消息認證碼,也稱為tag;Tlen是T的位長度;MSBs(X)是位串的X最左邊的s位。2023/9/1737西安電子科技大學計算機學院12.7
認證加密在通信中同時提供保密性和認證性的加密
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 抖音賬號IP人設深度定制與內容制作合作協議
- 春季傳染病的預防
- 酒店管理實習協議書
- 食品經營誠信協議書
- 魚池定制訂購協議書
- 裝修公共損壞協議書
- 認繳公司設立協議書
- 銀行取消代扣協議書
- 購銷合同三方協議書
- 雕塑維護保養協議書
- 大興醫院PACS系統常見問題處理辦法
- 上海中學2025屆高考英語二模試卷含解析
- 公務出國在職證明-英文版(因公簽證)
- 故都的秋課文原文
- 【上市公司應收賬款審計失敗原因及應對措施探究:以立信所審計風華高科公司為例(論文)10000字】
- 《長征勝利萬歲》教學設計 2024-2025學年統編版高中語文選擇性必修上冊
- 2024年上海高考數學真題試題(原卷版+含解析)
- 2024年個人勞務承包合同書
- 人工智能原理及MATLAB實現 課件 第2章 機器學習
- 宣傳費用結算合同
- 蘋果行業競爭對手分析分析
評論
0/150
提交評論