MD5是干什么用的?

MD5的中文名称是Message Digest Algorithm第五版,英文名称是Message-Digest Algorithm 5。

MD5是计算机安全领域中广泛使用的哈希函数,用于保护消息的完整性。这个算法的文件号是RFC 1321 (R. Riverst,麻省理工学院计算机科学实验室和RSA数据安全公司4月1992)。

MD5算法具有以下特点:

1.可压缩性:对于任意长度的数据,计算出的MD5值的长度是固定的。

2.容易计算:很容易从原始数据计算MD5值。

3.反修改:对原始数据的任何修改,哪怕只修改1字节,得到的MD5值都相差很大。

4.弱防碰撞:知道原始数据及其MD5值,很难找到一个MD5值相同的数据(即伪造数据)。

5.抗冲突性强:很难找到两个不同的数据,并使它们具有相同的MD5值。

扩展数据:

对MD5算法的简单描述可以如下:MD5对512位包中的输入信息进行处理,每个包被分成16个32位包。经过一系列的处理后,算法的输出由四个32位的包组成,将这四个32位的包串联起来将会生成一个128位的哈希值。

讯息摘要 5

1991年,Rivest开发了一种更成熟的md5算法。它在MD4的基础上增加了“安全带”的概念。虽然MD5比MD4更复杂,但它更安全。

该算法显然由四个步骤组成,与MD4设计略有不同。在MD5算法中,信息摘要的大小和填充的必要条件与MD4完全相同。Den boer和Bosselaers曾经发现了MD5算法中的伪碰撞,但是没有其他发现的加密结果。

参考:百度百科-MD5