软考-软件设计师:网络与信息安全基础知识-数字签名和认证、加密与认证的区别

数字签名

数字签名用于认证,只有信息的 发送者 才能产生的 别人无法伪造 的一段数据,这段数据也是对信息的发送者发送信息真实性的一个有效证明

数据的接收者验证 数据来源的 真实性 和 数据在传输过程中 是否被篡改。

优点

防冒充(伪造)

私有密钥只有签名者自己知道,所以其他人不可能构造出正确的

可鉴别身份

接收方能够鉴别发送方所宣称的身份

防篡改(防破坏信息的完整性)

会比较信息摘要,不可能被篡改,从而保证了数据的完整性。

防抵赖
  • 签名者无法抵赖:私有密钥只有签名者自己知道,所以数字签名不可能冒充伪造

  • 接收者无法抵赖:要求接收者返回一个自己的签名表示收到的报文,给对方或者第三方或者引入第三方机制

缺点

数据没有加密,虽然不能被篡改,但 不能防止被动攻击,会被抓取

执行过程

签名过程:

  1. 发送方首先利用 哈希函数 对原数据生成 信息摘要
  2. 使用 自己的私钥 对信息摘要进行 加密,生成 数字签名
  3. 发送方将 原数据 和 数字签名 一同发送给接收方。

验证过程:

  1. 接收方收到数据后,利用相同的 哈希函数 对原数据生成信息摘要。
  2. 同时,使用 发送方的公钥 对数字签名进行 解密,得到一个 信息摘要
  3. 比较这两个信息摘要。如果一致,则证明数据在传输过程中未被篡改,且数据确实 来自签名的发送方

关键操作

因为加密后,可能要发给多个人,所以

  • 使用 发送者的私钥 进行签名
  • 接收者用 发送者的公钥 进行解密

加密与认证区别

  • 加密是用于确保数据的保密性,阻止对手的被动攻击,如截取,窃听等

  • 认证用于确保报文发送者和接收者的真实性以及报文的完整性,阻止对手的主动攻击,如冒充、篡改、重播等。

参考:
https://blog.csdn.net/w605283073/article/details/137125843

题

在安全通信中,S将所发送的信息使用()进行数字签名,T收到该消息后可利用()验证该消息的真实性。

A、S的公钥
B、S的私钥
C、T的公钥
D、T的私钥

A、S的公钥
B、S的私钥
C、T的公钥
D、T的私钥

答案

注意:

  • 进行数字签名,是用 自己的 私钥 加密
  • 验证该 消息的真实性,用 对方的 公钥 解密

B
A

提示:加密过程如下:

  • S 用 T 的公钥加密
  • T 用 自己的 私钥解密

题

以下关于认证和加密的叙述中,错误的是()。
A、加密用以确保数据的保密性
B、认证用以确保报文发送者和接收者的真实性
C、认证和加密都可以阻止对手进行被动攻击
D、身份认证的目的在于识别用户的合法性,阻止非法用户访问
系统

答案

C,认证(数字签名),没人对明文加密成密文,所以无法阻止被动攻击

题

可用于数字签名的算法是
A、RSA
B、IDEA
C、RC-4
D、MD5

答案

A


原文出处:/show_1GW119vlNbJD.html