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