首页 > 编程知识 正文

md5是加密算法吗(md5权重)

时间:2023-05-06 06:33:37 阅读:2122 作者:418

MD5的全称是Message-Digest Algorithm 5,由麻省理工学院计算机科学实验室和RSA数据安全公司在20世纪90年代初发明,由MD2、MD3和MD4发展而来。

消息摘要(Message-Digest)一般指消息的哈希变换,即把任意长度的字节串变换成一定长度的大整数。请注意,我用了“字节字符串”这个词,而不是“字符串”,因为这个转换只与字节的值有关,与字符集或编码方法无关。

MD5将任意长度的字节串转换成128位的大整数,是一种不可逆的字符串转换算法。换句话说,即使看到源程序和算法描述,也无法将MD5的值转换回原始字符串。数学上来说,是因为有无限多的原始字符串,有点像没有反函数的数学函数。

MD5的典型应用是为消息(字节串)生成指纹,以防止“篡改”。例如,如果您在一个名为readme.txt的文件中编写一个段落,并为这个readme.txt生成一个MD5值并记录下来,那么您可以将这个文件传播给其他人。如果其他人修改了文件中的任何内容,您将在重新计算该文件的MD5时发现(两个MD5值不同)。如果有第三方认证机构,MD5还可以防止文档作者的“抵赖”,也就是所谓的数字签名应用。

MD5也广泛应用于加密和解密技术中。在许多操作系统中,用户的密码由MD5值(或其他类似算法)保存。用户登录时,系统将用户输入的密码计算成MD5值,然后与系统保存的MD5值进行比较,但系统并不“知道”用户的密码是什么。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。