数字签名并非是书面签名的数字图像化,而是通过密码技术对电子文档进行电子形式的签名。实际上人们可以否认曾对一个文件签过名,且笔迹鉴定的准确率并非 100%,但却难以否认一个数字签名。因为数字签名的生成需要使用私有密钥,其对应的公开密钥则用以验证签名,再加上目前已有一些方案,如数字证书,就是把一个实体(法律主体)的身份同一个私有密钥和公开密钥对绑定在一起,使得这个主体很难否认数字签名。
就其实质而言,数字签名是接收方能够向第三方证明接收到的消息及发送源的真实性而采取的一种安全措施,其使用可以保证发送方不能否认和伪造信息。
数字签名的主要方式是:报文的发送方从报文文本中生成一个散列值(或报文摘要)。发送方用自己的私有密钥对这个散列值进行加密来形成发送方的数字签名。然后,这个数字签名将作为报文的附件和报文一起发送给报文的接收方。报文的接收方首先从接收到的原始报文中计算出散列值(或报文摘要),接着再用发送方的公开密钥来对报文附加的数字签名进行解密和验证。如果两个散列值(也称哈希值)相同,那么接收方就能确认该数字签名是发送方的。哈希值有固定的长度,运算不可逆,不同明文的哈希值不同,而同样明文的哈希值是相同并唯一的,原文的任何改动其哈希值就会发生变化,通过此原理可以识别文件是否被篡改。
事实上,被篡改的经过数字签名的数据电文很容易被发觉,甚至该文件在外观上即可识别、无需鉴定,除非被告能够提交不同内容且未发现篡改的经过数字签名的数据电文。