数字签名的实现方式


发布日期:2024-04-17

目前,数字签名技术大多基于哈希摘要和非对称密钥体制来实现。如果签名者想要对某个文件进行数字签名,他必须首先从某个可信的第三方机构(数字证书认证中心CA)取得私钥和公钥,这需要用到PKI技术。

 

1.有哈希算法的数字签名与验证

哈希函数是一种“压缩函数”,利用哈希函数可以把任意长度的输入经由散列函数算法变换成固定长度的输出,该输出的哈希值就是消息摘要,也称数字摘要。

在正式的数字签名中,发送方首先对发送文件采用哈希算法,得到一个固定长度的消息摘要, 再用自己的密钥(SK)对消息摘要进行签名,形成发送方的数字签名。数字签名将作为附件和原文一起发送给接收方;接收方首先用发送方的公钥数字卡名进行解密得到发送方的数字摘要,然后用相同的哈希函数对原文进行哈希计算,得到一个新的消息摘要,将消息摘要与收到的消息摘要作比较。

 

2.基于非对称密钥加密体制的数字签名与验证

发送方首先将原文用自己的私钥加密的到数字签名,然后将原文和数字签名一起发送给接收方。接收方用发送方的公钥对数字签名进行解密,将原文进行比较。签名数字是目前电子商务、电子政务中应用普遍、技术成熟、可操作性强的一种电子签名方法。它采用了规范化的程序和科学化的方法,用于鉴定签名人的身份以及对一项电子数据内容的认可。使用数字签名技术能够验证文件的原文在传输过程中有无变动,确保传输电子文件的完整性、真实性和不可抵赖性。

 

综上所述,数字签名和加密有所不同。加密的目的是保护信息不被非授权用户存取,而签名的目的是使消息的接收者确信信息的发送者是谁、信息是否被他人篡改。另外,信息加解密可能是一次性的,所以要求它在解密之前是安全的即可;而一个签名的信息(比如文件、合同等)很可能再签署了很多年后才验证其有效性,而且还可能要进行多次验证。因此签名的安全性和防伪造性的要求更高。


加载中