数字签名时代来临,电子签名正流行

2017-11-07 17:35:44

在我们的日常工作、生活中时不时需要签字画押:各种申请、报销;工作合同、买卖合同;举不胜举…… 签名证明了签署者的身份;签署者签名表示对所签署内容已知、认同所签署内容;当出现纠纷时,可以由公正部门进行鉴定、仲裁……



在数字时代,数字处理技术使得我们的手写签名更容易被伪造、从一个文档挪到另一个文档……


随着电子商务、电子政务、各种在线交易的发展,数字时代的签名技术——数字签名(电子签名)应运而生。数字签名是公钥密码学中最重要的概念之一,可以提供其他方式难以实现的安全性。


例如,在通信中,当其中一方收到一个消息时往往需要验证:


1.消息在传输过程中有没有被篡改


2.需要确认消息来自真正的发送者


这些要求就可以通过数字签名来实现。


又如,对存储数据或程序进行数字签名,可以用来验证数据或程序的完整性。


它和传统手写签名类似,应具有以下特征:


(1)不可伪造性:除了签名者外,任何人都不能伪造签名者的合法签名。


(2)消息源认证性:接收者确信这份签名来自签名者。


(3)不可重用性:一消息的签名不能用于其他消息(同一消息不同时刻的签名也不一样)。


(4)不可修改性:消息在签名后不能被修改。


(5)不可抵赖性:签名者事后不能否认自己的签名。


数字签名作为公钥密码技术,在使用时签名者(Bob)必须事先生成一对公/私秘钥对;把公钥向公众公开;同时必须安全地保存好对应的私钥,这是数字签名的关键。


在对文档进行签名时首先用单向(不可逆)的散列函数将文档压缩成固定长度的摘要值,然后结合使用私钥和签名算法计算出数字签名结果。原始文本加上数字签名结果就构成了签名以后的文档。


任何验证者(Cathy)要验证签名先得查到签名者的公钥,提取原始文档及其签名结果。然后把原始文档用同样的压缩算法压缩到一个摘要值,并结合公钥、签名结果通过签名验证算法来验证它们是否满足签名方程。如果满足则文件确实是签发者签发的,否则就拒绝者签名文档。


在上述的过程中, 对于验证者必须保证公钥信息的真实性(确实是文件签发者的公钥),防止中间人攻击,这一点通常用数字证书来保证。另外,任意第三方拿到签名者的私钥就可以用它来对任意文档伪造签名,因此对于签名者而言必须保护好自己的私钥,把根留住!