第12章 哈希算法和MAC算法MD5(精简) 联系客服

发布时间 : 星期三 文章第12章 哈希算法和MAC算法MD5(精简)更新完毕开始阅读a0eb6b04a6c30c2259019ef9

谭文学信息安全与保密教案 第29/67页:4/21/2013 11:34 AM

哈希值组2: 3C D2 4F B0 哈希值组3: D6 96 3F 7D 哈希值组4: 28 E1 7F 72 解闭。

6. MD5总结

MD5使用低位在前(反序)。

生日攻击+64位可计算:128位hash值太短。 7. SHA-1算法 SHA简介

SHA (Secure Hash Algorithm,译作安全杂凑算法)

谭文学信息安全与保密教案 第30/67页:4/21/2013 11:34 AM

是美国国家安全局 (NSA) 设计,。 ?1992年NIST制定了SHA(128位)

?1993年SHA成为标准(FIPS SHA-0(128位)

?1994年修改产生SHA-1(160位)

?1995年SHA-1成为新的标准,作为PUB180-1)

?SHA-1要求输入消息长度<2^64 ?SHA-1的摘要长度为160位 ?基础是MD4

PUB 180)SHA-1(FIPS 谭文学信息安全与保密教案 第31/67页:4/21/2013 11:34 AM

?四种变体:SHA-224, SHA-256, SHA-384 和 SHA-512 (这些有时候也被称做 SHA-2)。 8. SHA-1算法过程(自学:本科不讲) SHA-1: padding与MD5相同 ?Step 1: Padding M M1 –|M1| ≡ 448 mod 512

–|M1| > |M| 填充后必然加长。

– 如果|M| ≡ 448 mod 512,则|M1| = |M|+512 –Padding内容: 100?0 |X|:表示求消息的长度。

?谭文学信息安全与保密教案 第32/67页:4/21/2013 11:34 AM

?Step 2: Append 64-bit length M1 M2 –|M| < 264

–高字节在前(big-endian)

–|M2|为512的倍数: Y0,Y1,?,YL-1

?Step 3: 向量初始化Initialize MD buffer (big-endian)

A = 67 45 23 01 (0x67452301) B = EF CD AB 89 (0xEFCDAB89) C = 98 BA DC FE (0x98BADCFE) D = 10 32 54 76 (0x10325476) E = C3 D2 E1 F0 (0xC3D2E1F0)

?