目录
一、预备知识
(一)hash函数
Hash函数H将可变长度的数据块M作为输入,产生固定长度的Hash值h = H(M)。称M是h的原像。因为H是多对一的映射,所以对于任意给定的Hash值h,对应有多个原像。如果满足x≠y且H(x)=H(y),则称为碰撞。简单来说就是:由一个值转化为另一个值,且过程不可逆的,比方说MD5,SHA-512等。用于验证数据的完整性,即判断数据是否被篡改过。
(二)MD5概念
md5 为 消息摘要算法(英语:MD5 Message-Digest Algorithm),一种被广泛使用的密码散列函数,可以产生出一个128位(16字节)的散列值(hash value),用于确保信息传输