与我们合作
我们专注:网站策划设计、网络多媒体传播、网站优化及网站营销、品牌策略与设计
主营业务:网站建设、移动端微信小程序开发、VI设计、网络运营、云产品·运维解决方案
有一个品牌项目想和我们谈谈吗?
您可以填写右边的表格,让我们了解您的项目需求,这是一个良好的开始,我们将会尽快与您取得联系。当然也欢迎您给我们写信或是打电话,让我们听到您的声音
您也可通过下列途径与我们取得联系:
地 址: 深圳.龙岗区大运软件小镇11栋3楼
电 话: 138 2888 4598 / 138 0880 9053
网 址: http://www.appvx.cn
快速提交您的需求 ↓
书信或文件是根据亲笔签名或印章来证明其真实性。但在计算机网络中传送的文电又如何盖章呢?这就要使用数字签名。数字签名必须保证能够实现以下三点功能:
(1)接受者能够核实发送者对报文的签名。也就是说,接收者能够确信该报文的确实发送者发送的。其他人无法伪造对报文的签名。这就叫做报文鉴别。
(2)接收者确信所收到的数据和发送者发送的完全一样而没有被篡改过。这就叫做报文的完整性。
(3)发送者事后不能抵赖对报文的签名。这就叫做不可否认。
现在已有多种实现数字签名的方法。但采用公钥算法要比采用对称密钥算法更容易实现。下面就来介绍这种数字签名。
为了进行签名,A用其私钥SKA对报文X进行D运算。D运算本来叫做解密运算。还没有加密怎么就进行解密呢?这并没有关系。因为D运算只是得到了某种不可读的密文。我们写上的是“D运算”而不写上“解密运算”就是为了避免产生这种误解。A把经过D运算得到的密文传送给B。B为了核实签名,用A的公钥进行E运算,还原出明文X。请注意,任何人用A的公钥PK进行E运算后都可以得出A发送的明文。可见D运算和E运算都不是为了解密和加密,而是为了进行签名和核实签名。
下面讨论一下数字签名为什么具有上述的三点功能。
因为除A外没有被人持有A的私钥SKA,所以除A外没有别人能产生密文DSKA(X)。这样,B就相信报文X是A签名发送的。这就是报文鉴别的功能。同理,其他人如果篡改过报文,但并无法得到A的私钥SKA来对X进行加密。B对篡改过的报文进行解密后,将会得出不可读的明文,就知道收到的报文被篡改过。这样就保证报文完整性的功能。若A要抵赖曾发送报文给B,B可把X及DSKA(X)出示给进行公证的第三者。第三者很容易用PKA去证实A确实发送X给B。这就是不可否认的功能。这里的关键都是没有其他人能够持有A的私钥SKA。
但上述过程仅对报文进行了签名。对报文X本身却未保密。因为截获到密文DSKA(X)并知道发送者身份的任何人,通过查阅手册即可获得发送者的公钥PKA,因而能知道报文的内容。若采用下图所示方法,则可同时实现秘密通信和数字签名。图中SKA和SKB分别为A和B的私钥,而PKA和PKB分别为A和B的公钥。