一、数字签名
数字签名的作用就是确保发送者A发给接收者B的信息是发送者A发送的,并且在传输过程中数据没有被修改,类拟于写在纸上的物理签名,数字签名是非对称密钥加密技术与数字摘要技术的应用。
在讲解解数字签名之前,我们应该了解数字签名的由来是如何生成的,生成数字签名的算法叫 信息完整性验证算法。
二、信息完整性验证算法
报文摘要算法(Message Digest Algorithms),算法的重点在于“摘要”,即对原始数据依据规则进行提取,摘要和原文具有联系性,只要原始数据稍有改动,“摘要”的结果就会不同。因此,摘要可以验证原文是否被修改,这个报文摘要就是我们常说的数字签名。
注: 摘要算法采用“单向函数”,即只能从输入数据得到输出的数据,无法从输出的数据得到输入的数据。常见报文摘要算法有SHA1、MD5。
(1)SHA1算法
安全Hash算法,SHA1也是基于MD5的,把信息分为512bit的分组,创建一个160bit的摘要。
(2)MD5算法
消息摘要算法5(MD5),把信息分为512bit的分组,创建一个128bit的摘要。
三、数字签名和验证的过程