DAA和CMAC

數據認證算法(DAA)  Data Authentication Algorithm算法

  DAA創建在DES之上,該算法比較陳舊,人們已經發現了這個算法的安全弱點,目前已經被廢止。安全

  

  DAA採用DES運算的CBC工做模式,其初始向量爲0,須要認證的數據分紅連續的64位分組D1,D2,...,DN,若最後分組不足64位,則在其後填充0補足。加密

  DAA的安全隱患spa

    給定一個消息分組X的CBC MAC碼,如T = MAC(K , X),則攻擊者立刻就知道對於兩個消息分組 X || (TX) 的CBC MAC碼仍是T。顯然,對於短消息,攻擊者能夠很容易就找到符合條件的M'使得MAC(K , M') = MAC(K , M)。3d

 

基於密碼的消息認證嗎(CMAC)  Cipher-based Message Authentication Codeblog

   CMAC的加密對於AES和3DES都適用。ip

  

  爲消除DAA存在的安全隱患,CMAC在DAA基礎上作了一個改進,在最後一步加密的先後均做了數學處理
數學

     Cn = E(K , [MnCn-1K1])it

     T = MSBTlen(Cn)io

          Tlen是T的長度,MSBs(X)是取位串X最左邊的s位

  兩位n位的密鑰K1和K2由K按照以下方式導出:

    L = E(K , 0n)      //將分組密碼應用到一個全0分組上

    K1 = L • x        

    K2 = L • x2 = (L • x) • x

    乘法(•)在域GF(2n)內進行,x和x2是域GF(2n)的一次和二次多項式

相關文章
相關標籤/搜索