300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 计算机等级考试网络技术考点 – java – 前端

计算机等级考试网络技术考点 – java – 前端

时间:2020-08-26 23:58:52

相关推荐

计算机等级考试网络技术考点 – java – 前端

计算机等级网络技术考试知识点梳理:数字签名

(1)数字签名的要求

消息认证用来保护通信双方免受任何的第三方的攻击,但是它无法防止通信双方的互相攻击。数字签名可以保证信息传输过程中信息的完整性,并提供信息发送者本身的身份认证,防止抵赖行为的发生。

基于公钥密码体制和私钥密码体制都可以获得数字签名,但目前主流的是基于公钥密码体制的数字签名,包括普通数字签名和特殊数字签名。

普通数字签名的算法有:RSA、ELGamal、Fiat.Shamir、Guillou—Quisquarter、Schnorr、Ong.Schnorr-Shamir数字签名算法、DES/DSA、椭圆曲线数字签名算法和有限自动机数字签名算法等。

特殊数字签名算法:盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等。

数字签名的应用涉及法律问题。美国政府基于有限域上的离散对数问题制定了自己的数字签名标准(DES)。

(2)数字签名的创建

基于公钥密码体制的数字签名是一个加密的消息摘要,附加在消息的后面。如果甲要在给乙的消息中创建一个数字签名,其步骤如下:

①甲创建一个公钥/私钥对。②甲将自己的公钥给乙。③甲将要发送的消息作为一个单项散列函数的输入,散列函数的输出就是消息摘要。④甲再用其私钥加密消息摘要,得到数字签名。

(3)数字签名的验证

在接收方,乙需要按以下步骤验证甲的数字签名:

①乙将收到的数据分离成消息和数字签名。②乙用甲的公钥对数字签名解密,得到消息摘要。③乙把消息作为甲所使用的相同散列函数的输入,得到一个消息摘要。④比较这两个消息摘要,若匹配表示验证成功。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。