MD4

MD4麻省理工学院教授Ronald Rivest于1990年设计的一种信息摘要算法。它是一种用来测试信息完整性的密码散列函数的实行。其摘要长度为128位。这个算法影响了后来的算法如MD5SHA家族RIPEMD等。

1991年Den Boer和Bosselaers发表了一篇文章指出MD4的短处, 2004年8月王小云报告在计算MD4时可能发生杂凑冲撞

一种MD4算法的变体,eD2k Hash算法,被用于eDonkey网络eD2k链接之中,eDonkey2000eMule等eD2k网络客户端可通过此算法识别文件。

MD4散列

一般128位长的MD4散列被表示为32位的十六进制数字。以下是一个43位长的ASCII字母列的MD4散列:

MD4("The quick brown fox jumps over the lazy dog") = 1bee69a46ba811185c194762abaeae90

即使在原文中作一个小变化(比如用c取代d)其散列也会发生巨大的变化:

MD4("The quick brown fox jumps over the lazy cog") = b86e130ce7028da59e672d56ad0113df

空文的散列为:

MD4("") = 31d6cfe0d16ae931b73c59d7e0c089c0