用于实现数字签名。哈希函数[3],把任意长度的消息变换为一个固定长度的散列值。当消息只有5一个比特位产生变化时,数据摘要“显著”地发生变化,其目的是把大的消息压缩变短了,因此,称“数据摘要为数据指纹”。在消息进行篡改、插入和重排之后,数据指纹也会变化,所以,能提供完整性服务。一般来说,数据的完整性检验方法如图1-1所示。从1、2端送入密钥。图1-1消息完整性检验数字签名[5]就是由信息的发送者通过一个单向函数对要传送的报文进行处理产生别人无法伪造的一段数字串。这个数字串用以认证报文的来源并核实报文是否发生了变化。发送者用自己的私有密钥加密数据传给接受者,接受者用发送者的公钥解开数据后,就可以确定消息来源,同时也是对发送者发送信息的真实性的一个证明,发送者不能抵赖。具有消息摘要的数字签名工作工程如上图1-2所示。消息实际收到的附件产生附件消息产生附件所期望的附件附件如果二者一样,则认为消息是完整的消息附件126原始信息摘要运算签名信息签名方私钥加密文档有效数据信息附加验证信息验证方原始信息签名信息摘要运算结果比较签名方公钥解密签名方图1-2数字签名过程1.4数字签名的功能数字签名技术其功能[4]有以下几个方面:(1)完整性数字签名与原始的文件或其摘要一起发送给接收方,一旦信息被篡改,接受者可以通过计算机摘要和验证签名来判断该文件无效。(2)机密性将报文信息用接收方的公钥进行解密,以保证信息的机密性。(3)防伪造签名密钥即私钥只有签名者自己拥有,别人不能伪造出正确的签名数据。这就是防伪造特性。(4)身份认证数字签名中,公钥是其身份的标志,使用公钥签名,如果接受方或验证方用其公钥进行验证并获通过,那么可以肯定签名人就是拥有私钥的那个人。(5)防抵赖数字签名可作为签名者签名操作的依据,防止抵赖。(6)防重放攻击通常采用对签名报文的加盖时间戳或添加处理流水号等技术,可以防止重放技术。