[密码学] 消息认证码构造方法
文章目錄
- 基于Hash函數(shù)的消息認(rèn)證碼
- KeyedHash=Hash(Key||Message)
- HMAC與NMAC
- ??HAMC
- ??CMAC
- 基于分組密碼的MAC
- DAA
主要實(shí)現(xiàn)方法:
??①帶密鑰的哈希函數(shù):HMAC、NMAC
??②分組密鑰算法構(gòu)成:OMAC、CBC-MAC、PMAC等
基于Hash函數(shù)的消息認(rèn)證碼
優(yōu)勢:
??①軟件執(zhí)行速度比諸如DES這樣的分組密碼要快;
??②可用許多共享的密碼學(xué)Hash函數(shù)代碼庫。
KeyedHash=Hash(Key||Message)
??①許多哈希函數(shù)不是專門為MAC而設(shè)計(jì),比如SHA系列函數(shù),不能直接帶密鑰使用。
??②存在一定的安全弱點(diǎn)。如長度擴(kuò)展攻擊等
HMAC與NMAC
??HMAC K(m)=H( k’ ⊕ opad || H( k’ ⊕ ipad || m))
??NMAC k1K2(m)=Hk1( Hk2( m ) )
??不同:①除填充的消息長度不同外,這兩種與基于哈希的MAC類似;
?????②除相關(guān)密鑰攻擊外,對HMAC的攻擊也適應(yīng)NMAC;
??HAMC
??
??可以證明嵌入Hash函數(shù)的強(qiáng)度與HMAC的強(qiáng)度之間的聯(lián)系;HMAC的安全依賴于:使用的密鑰和底層的Hash函數(shù);在選擇Hash函數(shù)時(shí)要兼顧安全要求與運(yùn)行速度,通常選用MD5。
??CMAC
??
基于分組密碼的MAC
DAA
數(shù)據(jù)認(rèn)證算法(DAA)基于DES-CBC的以前用的最廣泛的MAC。
??①初始向量IV=0,最后分組用0填充;
??②用密文塊鏈接模式下的DES加密;
??③最后一個(gè)密文塊作文MAC,或者最后密文塊的最左面的M位(16≤M≤64)
??
總結(jié)
以上是生活随笔為你收集整理的[密码学] 消息认证码构造方法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [密码学] 消息认证码基础
- 下一篇: [密码学] 基础知识