【软考】数字签名

news2024/9/21 2:46:28

目录

          • 1. 说明
          • 2. 过程
            • 2.1 数字签名过程
            • 2.2 数字加密过程
          • 3. 公开密钥
          • 4. 报文加密
          • 5. 例题
            • 5.1 例题1

1. 说明
  • 1.书信或文件是根据亲笔签名或印章来证明其真实性。
  • 2.在计算机网络中传送的文电用数字签名来解决问题。
  • 3.数字签名必须保证三点:接收者能够核实发送者对报文的签名发送者事后不能抵赖对报文的签名接收者不能伪造对报文的签名
  • 4.采用公开密钥算法要比采用常规密钥算法更容易实现。
  • 5.SKA: Secret Key of the Authenticator,签名者(Sender或Signer)的私钥。
  • 6.PKA:Public Key of the Authenticator,签名者(Sender或Signer)的公钥。
  • 7.PKB:Public Key of the Beneficiary,接收者(Receiver或Verifier)的公钥。
  • 8.SKB:Secret Key of the Beneficiary,接收者(Receiver或Verifier)的私钥。
2. 过程
2.1 数字签名过程
  • 1.信息发送者使用一个单向散列函数(Hash 函数)对信息生成信息摘要。
  • 2.信息发送者使用自己的私钥签名信息摘要。
  • 3.信息发送者把信息本身和已签名的信息摘要一起发送出去。
  • 4.信息接收者通过使用与信息发送者使用的同一个单向散列函数(Hash 函数)对接收的信息本身生成新的信息摘要,再使用信息发送者的公钥对信息摘要进行验证,以确认信息发送者的身份和信息是否被修改过。
2.2 数字加密过程
  • 1.当信息发送者需要发送信息时,首先生成一个对称密钥,用该对称密钥加密要发送的报文。
  • 2.信息发送者用信息接收者的公钥加密上述对称密钥。
  • 3.信息发送者将第1步和第2步的结果结合在一起传给信息接收者,称为数字信封
  • 4.信息接收者使用自己的私钥解密被加密的对称密钥,再用此对称密钥解密被发送方加密的密文,得到真正的原文。
  • 5.数字签名和数字加密的过程虽然都使用公开密钥体系,但实现的过程正好相反,使用的密钥对也不同。
  • 6.数字签名使用的是发送方的密钥对,发送方用自己的私有密钥进行加密,接收方用发送方的公开密钥进行解密,这是一个一对多的关系,任何拥有发送方公开密钥的人都可以验证数字签名的正确性。
  • 7.数字加密则使用的是接收方的密钥对,这是多对一的关系,任何知道接收方公开密钥的人都可以向接收方发送加密信息,只有唯一拥有接收方私有密钥的人才能对信息解密。
  • 8.另外,数字签名只采用了非对称密钥加密算法,它能保证发送信息的完整性身份认证不可否认性;而数字加密采用了对称密钥加密算法和非对称密钥加密算法相结合的方法,它能保证发送信息的保密性。
3. 公开密钥
  • 1.发送者A用其秘密秘钥SKA对报文X进行运算,将结果DSKA(X)传送给接收者B。
  • 2.发送者对报文的运算不是为了将报文加密,而是为了进行数字签名。
  • 3.解密是一个数学运算。
  • 4.B用已知的A的公开加密秘钥得出EPKA(DSKA(X))=X。
  • 5.因为除A外没有别人能具有A的解密密钥SKA,所以除A外没有别人能产生密文DSKA(X)。
  • 6.B相信报文X是A签名发送的。
  • 7.若A要抵赖曾发送报文给B,B可将X及DSKA(X)出示给第三者。
  • 8.第三者很容易用PKA去证实A确实发送X给B。
  • 9.若B将X伪造成X,则B不能在第三者前出示DSKA(X)。则证明B伪造了报文。
  • 10.数字签名同时实现了对报文来源的鉴别。
  • 11.图示
    在这里插入图片描述
4. 报文加密
  • 1.上述过程仅对报文进行了签名。
  • 2.对报文X本身却未保密。
  • 3.因为截到密文DSKA(X)并知道发送者身份的任何人,通过查阅手册即可获得发送者的公开密钥PKA,因而能破解电文内容。
  • 4.则可同时实现秘密通信和数字签名。SKA和SKB 分别为A和B的秘密密钥,而PKA和PKB分别为A和B的公开密钥。
  • 5.图示
    在这里插入图片描述
5. 例题
5.1 例题1
  • 1.题目
1.PKI体制中,保证数字证书不被篡改的方法是(A)。
A.用CA的私钥对数字证书签名
B.用CA的公钥对数字证书签名
C.用证书主人的私钥对数字证书签名
D.用证书主人的公钥对数字证书签名
  • 2.解析
1.在PKI体制(即公钥基础设施Public Key Infrastructure)中,
识别数字证书的颁发机构以及通过该机构核实证书的有效性,
了解证书是否被篡改均通过一种机制-对数字证书做数字签名。
2.数字签名将由CA机构使用自己的私钥进行。
3.数字证书由CA机构颁发的,是由CA的私钥进行签名的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2094828.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[C语言]第八节 数组一基础知识到高级技巧的全景探索

目录 8.1 数组概念的引入 8.2.⼀维数组的创建和初始化 8.2.1 数组的创建 8.2.2数组的初始化 8.2.3 数组的类型 8.3 ⼀维数组的使⽤ 8.3.1 数组下标 8.3.2 打印数组元素 8.3.3 输入数组元素 8.4 ⼀维数组在内存中的存储 8.5 sizeof计算数组元素个数 8.5.1 sizeof 关键…

第4章-05-用WebDriver下载页面csv到本地

🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年CSDN全站百大博主。 🏆数年电商行业从业经验,历任核心研发工程师,项目技术负责人。 🏆本文已收录于专栏:Web爬虫入门与实战精讲,后续完整更新内容如下。 文章…

Java 入门指南:Java 并发编程 —— JMM Java内存模型

JMM(Java Memory Model,Java 内存模型)(抽象模型)是用来描述和控制多线程之间内存可见性、有序性、原子性、指令重排等问题的规范。 JMM 定义了一组规则,规定了在多线程环境下,线程在执行共享变…

尚品汇-MQ模块搭建测试、消息不丢失(重)(四十三)

目录: (1)消息不丢失 (2)消息确认 (3)消息确认业务封装 (4)封装发送端消息确认 (5)封装消息发送 (6)发送确认消息测试…

【C#】Visual Studio 2017开发C#,按F1键没有跳转到C#帮助文档,反而跳到了Qt的帮助文档

1. 原因 Visual Studio中安装了Qt的插件,所以将F1的跳转链接转到了Qt的帮助文档。 2. F1改回微软帮助文档方法 工具 - 选项 - Qt - General - Try Qt Documentation when F1 is pressed改为Flase

Web服务端通过SSE推送消息给浏览器客户端的实现方案(附详细代码和仓库地址)

目录 1、SSE(Server-Sent Events)简介2、SSE 的工作原理3、SSE 与客户端轮询的区别和优势比较区别优势 4、SSE简单实现(单机应用Demo)演示效果SSE-Demo仓库地址下面直接贴代码:前端实现:后端实现: 5、SSE简单实现(分布…

【pycharm】汉化及翻译插件

汉化插件 翻译插件 使用 选中右键翻译

一键解决LBP2900通信错误的问题(同样支持Win 11系统)

**目录** **前言****常见解决方式****方案一:端口排除****方案二:服务重启****方案三:注册表注入修复** 前言 佳能LBP2900向来是经典耐用款的打印机。想必各位可能遇到过,由于老旧会出现奇葩的问题,譬如 就算USB接口已…

【C++篇】~类和对象(上)

【C篇】 类和对象上 一类二实例化内存对齐原因(用空间换时间,提高效率) 一类 ‘类’class可以理解为C语言阶段的‘结构体’,它的用法与struct大差不差很多地方都相同,但是C毕竟是C,类的用法肯定比结构体的…

Linux Kernel 6.12版预计将支持在崩溃后显示二维码 后续可以解码排查错误

7 月份时红帽工程师基于 systemd 255 版的全屏显示错误消息功能为 Linux Kernel 开发崩溃后显示二维码选项,这与微软在 Windows 10/11 蓝屏死机后显示二维码有异曲同工之妙。 不过 Linux 与 Windows 在崩溃时显示的二维码内容则有本质区别,因为 Window…

单链表反转(C语言)

1 问题描述 力扣(LeetCode)--反转链表 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 例如: 输入:head [1,2,3,4,5]输出:[5,4,3,2,1] 输入:head [1,2]输出&#x…

11 Java 方法引用、异常处理

文章目录 前言一、Java接口之函数式编程 --- 接口知识补充1 Function<T,R>泛型接口2 BiFunction<T, U, R>泛型接口3 自定义泛型函数式编程接口 二、方法引用1 方法引用初体验&#xff08;以Array.sort()方法为例&#xff09;2 引用静态方法3 引用其他类成员方法 前…

【面试五】PID控制算法

一、 PID算法简介 PID&#xff08;Proportional-Integral-Derivative&#xff09;控制算法是一种经典的反馈控制方法&#xff0c;广泛应用于自动控制系统&#xff0c;例如温度控制、速度控制、位置控制等。 PID控制算法的核心包含三个部分&#xff1a;比例项&#xff08;P&…

@antv/g6 业务场景:流程图

1、流程图是流经一个系统的信息流、观点流或部件流的图形代表。在企业中&#xff0c;流程图主要用来说明某一过程。这种过程既可以是生产线上的工艺流程&#xff0c;也可以是完成一项任务必需的管理过程。业务场景流程图如下&#xff1a; 2、绘制流程图的 Tips 流程图一般是用…

计算机毕业设计选题推荐-果树生长信息管理系统-Java/Python项目实战

✨作者主页&#xff1a;IT毕设梦工厂✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…

Redis三种集群模式:主从模式、哨兵模式和Cluster模式

1. 总结经验 redis主从&#xff1a;可实现高并发(读)&#xff0c;典型部署方案&#xff1a;一主二从 redis哨兵&#xff1a;可实现高可用&#xff0c;典型部署方案&#xff1a;一主二从三哨兵 redis集群&#xff1a;可同时支持高可用(读与写)、高并发&#xff0c;典型部署方…

探索Python数据持久化的秘密:ZODB库的神奇之旅

文章目录 探索Python数据持久化的秘密&#xff1a;ZODB库的神奇之旅背景ZODB是什么&#xff1f;如何安装ZODB&#xff1f;简单库函数使用方法场景应用常见Bug及解决方案总结 探索Python数据持久化的秘密&#xff1a;ZODB库的神奇之旅 背景 在Python的广阔世界中&#xff0c;数…

基于单片机的水箱水质监测系统设计

本设计基于STM32F103C8T6为核心控制器设计了水质监测系统&#xff0c;选用DS18B20温度传感器对水箱水体温度进行采集&#xff1b;E-201-C PH传感器获取水体PH值&#xff1b;选用TS-300B浊度传感器检测水体浊度&#xff1b;采用YW01液位传感器获取水位&#xff0c;当检测水位低于…

网络压缩之知识蒸馏(knowledge distillation)

因为直接训练一个小的网络&#xff0c;往往结果就是没有从大的网络剪枝好。知识蒸馏的概念是 一样的&#xff0c;因为直接训练一个小的网络&#xff0c;没有小的网络根据大的网络来学习结果要来得 好。 因而&#xff0c;先训练一个 大的网络&#xff0c;这个大的网络在知识蒸馏…

Flutter 初识:Chip控件

Flutter Chip控件小结 Chip属性解析示例 InputChip属性解析示例 ChoiceChip属性解析示例 FilterChip属性解析示例 ActionChip属性解析示例 在 Flutter 中&#xff0c;Chip 是一种用于显示简洁信息的组件。它通常用来展示标签、属性、短的文本片段等&#xff0c;并可以包含可选的…