信息摘要技术
信息摘要
定义
信息摘要就是原数据通过某个算法生成一个固定长度的单向散列值。
特点
1、输出长度固定:无论输入的长度和值如何,计算得到的哈希值长度总是固定的。
2、不可逆性(单向):不可能使用散列值推出原文件内容
3、无碰撞性:想要找到两个不同的输入值,使它们哈希后相同是非常困难的
4、雪崩效应:即使只修改输入数据的一个比特,最终得到的哈希值也会有很大不同。
常见的散列值计算函数
算法 | 输出长度(位) | 说明 |
---|---|---|
MD5 | 128 bits | 把信息分为512比特的分组,并且创建一个128比特的摘要 |
SHA-1 | 160 bites | 把信息分为512比特的分组,并且创建一个160比特的摘要 |
SHA-256 | 256 bites | 把信息分为512比特的分组,并且创建一个256比特的摘要 |
SHA-512 | 512 bites | 把信息分为1024比特的分组,并且创建一个512比特的摘要 |
作用
哈希算法的目的就是为了验证原始数据是否被篡改
应用场景
数据完整性验证
发送方:将报文进行Hash计算将得到的Hash值放入到报文中一起传给接收方
接收方:接收到报文后,使用同样的Hash算法计算报文得到Hash值,然后将该Hash值与随着报文一起接收到的Hash值进行对比。对比一致,说明报文没有问题;不一致,说明报文被篡改了