编辑:
1970-01-01
2.数字签名
(1)数字签名的要求
消息认证用来保护通信双方免受任何的第三方的攻击,但是它无法防止通信双方的互相攻击。数字签名可以保证信息传输过程中信息的完整性,并提供信息发送者本身的身份认证,防止抵赖行为的发生。
基于公钥密码体制和私钥密码体制都可以获得数字签名,但目前主流的是基于公钥密码体制的数字签名,包括普通数字签名和特殊数字签名。
普通数字签名的算法有:RSA、ELGamal、 Fiat.Shamir、Guillou—Quisquarter、Schnorr、 Ong.Schnorr-Shamir数字签名算法、DES/DSA、椭圆曲线数字签名算法和有限自动机数字签名算法等。
特殊数字签名算法:盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等。
数字签名的应用涉及法律问题。美国政府基于有限域上的离散对数问题制定了自己的数字签名标准(DES)。
(2)数字签名的创建
基于公钥密码体制的数字签名是一个加密的消息摘要,附加在消息的后面。如果甲要在给乙的消息中创建一个数字签名,其步骤如下:
①甲创建一个公钥/私钥对。②甲将自己的公钥给乙。③甲将要发送的消息作为一个单项散列函数的输入,散列函数的输出就是消息摘要。④甲再用其私钥加密消息摘要,得到数字签名。
(3)数字签名的验证
在接收方,乙需要按以下步骤验证甲的数字签名:
①乙将收到的数据分离成消息和数字签名。②乙用甲的公钥对数字签名解密,得到消息摘要。③乙把消息作为甲所使用的相同散列函数的输入,得到一个消息摘要。④比较这两个消息摘要,若匹配表示验证成功。
标签:计算机等级考试
精品学习网(51edu.com)在建设过程中引用了互联网上的一些信息资源并对有明确来源的信息注明了出处,版权归原作者及原网站所有,如果您对本站信息资源版权的归属问题存有异议,请您致信qinquan#51edu.com(将#换成@),我们会立即做出答复并及时解决。如果您认为本站有侵犯您权益的行为,请通知我们,我们一定根据实际情况及时处理。