摘要、数字签名、对称加密、非对称加密综合应用示例以及技术原理说明

在这里插入图片描述
图:介绍了数字信封的安全传输过程

关键术语

  • 散列:Hash(哈希),一般翻译做散列、杂凑,是把任意长度的输入(数据信息)通过散列算法变换成固定长度的输出,该输出就是散列值(信息摘要),特点:同一段信息有且仅有一个散列值对应
  • MAC报文鉴别码: 由散列值的数字签名和原消息组成
  • 对称加密:
  • 非对称加密:

非对称加密的应用场景

  • 数字签名:使用自己的私钥加密消息的过程,任何持有该公钥的一方都可以解密,保证了数据的真实性
  • 数据加密:使用对方的公钥进行加密的过程,只有持有私钥的一方才能解密,保证了数据的隐蔽性

发送者加密步骤

  1. A方对邮件(明文消息)进行散列获得散列值(摘要)
  2. A方对散列值进行签名(由A生成的非对称加密密钥对,其中的私钥用来加密散列值得到密文即签名,公钥则传送给了B)
  3. 将签名和名文消息合并,形成MAC报文鉴别码
  4. 对MAC报文鉴别码进行加密 (使用A生成的对称密钥加密),得到密文1
  5. 对称密钥进行加密(由B生成的非对称加密密钥对,用其中的公钥来加密),得到密文2
  6. 将密文1 和 密文2 一起发送给接收者B

接收者B解密步骤,是上面加密步骤的逆过程

  1. 接收到A方发来的密文1,密文2
  2. 使用B的私钥解密密文2 ,得到对称密钥
  3. 使用对称密钥解密密文1,得到MAC
  4. 取MAC中的签名,用A的公钥解密签名,得到散列值(摘要)
  5. 取MAC中的明文消息进行散列,得到散列值,对比上步的散列值是否一致,若一致则证明消息未被篡改,消息正常接收完成

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

美股集体收跌:汇盈策略股票交易特朗普、哈里斯概念股一同上涨

查查配分析随着美国大选进入最后倒计时,三大指数在多数投资者保持观望的状态下集体收跌。美债收益率集体回落,十年期美债收益率跌超8个基点至4.29%。 截至周一收盘,标普500指数跌0.28%,报5712.69点;纳斯达克指数跌0.33%,报18179.98点;道琼斯工业指数跌0.61%,报41794.6点。 汇…

力扣最热一百题——验证二叉搜索树

目录 题目链接:98. 验证二叉搜索树 - 力扣(LeetCode) 题目描述 示例 提示: 二叉搜索树的要求 解法一:采用中序遍历 中序遍历的定义 为什么二叉搜索树的中序遍历是严格递增的 二叉搜索树(BST&#x…

golang 实现 bitcoin内核:编码实现椭圆曲线上的点

比特币在很大程度上依赖于一个称为椭圆曲线的数学对象,如果没有这个数学结构,比特币就像海滩上的城堡,随时可能崩溃。什么是椭圆曲线,它的方程是这样的:y^2 x^3 ax b,它的形状就像下面这样: …

[免费]基于Python的Django+Vue3在线考试系统【论文+源码+SQL脚本】

大家好,我是java1234_小锋老师,看到一个不错的基于Python的DjangoVue3在线考试系统,分享下哈。 项目视频演示 【免费】基于Python的DjangoVue3在线考试系统 Python毕业设计_哔哩哔哩_bilibili 项目介绍 本论文提出并实现了一种基于Python…

API网关 - JWT认证 ; 原理概述与具体实践样例

API网关主要提供的能力,就是协议转换,安全,限流等能力。 本文主要是分享 如何基于API网关实现 JWT 认证 。 包含了JWT认证的流程,原理,与具体的配置样例 API网关认证的重要性 在现代Web应用和微服务架构中&#x…

【保姆级教程】实操 Linux 磁盘管理:硬盘选型 分区挂载

最近,Linux 服务器自带的固态硬盘,空间告警,急需加上一块新的硬盘来救急。 今日分享,系统梳理下 Linux 下挂载磁盘的详细步骤和注意事项,方便日后翻阅,也给有类似需求的小伙伴一点帮助。 1. SSD&#xff…

平衡二叉树(递归)

给定一个二叉树,判断它是否是 平衡二叉树.平衡二叉树 是指该树所有节点的左右子树的深度相差不超过 1。 示例 1: 输入:root [3,9,20,null,null,15,7] 输出:true示例 2: 输入:root [1,2,2,3,3,null,null,4…

雷池社区版新版本功能防绕过人机验证解析

前两天,2024.10.31,雷池社区版更新7.1版本,其中有一个功能,新增请求防重放 更新记录:hhttps://docs.waf-ce.chaitin.cn/zh/%E7%89%88%E6%9C%AC%E6%9B%B4%E6%96%B0%E8%AE%B0%E5%BD%95 仔细研究了这个需求,…

黑龙江某涝区泵闸站自动化、信息化改造项目案例

项目背景 黑龙江某地区紧邻松花江,雨季时降雨量增大,排水渠水位上涨,如果出现排涝不及时,水位过高时会漫入周边农田,引发洪涝灾害,对作物生长造成重大损害。为应对这一问题,自今年起&#xff0c…

Java 多线程(八)—— 锁策略,synchronized 的优化,JVM 与编译器的锁优化,ReentrantLock,CAS

前言 本文为 Java 面试小八股,一句话,理解性记忆,不能理解就死背吧。 锁策略 悲观锁与乐观锁 悲观锁和乐观锁是锁的特性,并不是特指某个具体的锁。 我们知道在多线程中,锁是会被竞争的,悲观锁就是指锁…

【Spring IOC】实现一个简单的 Spring 容器

1. 理解知识 Spring 容器的作用 Spring 容器是Spring的核心,用来管理Bean对象的。容器将创建对象,把它们连接在一起,配置它们,并管理他们的整个生命周期从创建到销毁。 Bean 对象的管理 当一个 Bean 对象交给 Spring 容器管理…

非线性数据结构之图

一、有向图(Directed Graph) 1. 定义 有向图是一个由顶点(节点)和有方向的边(弧)组成的图。在有向图中,每条边都有一个起点和一个终点,表示从一个顶点到另一个顶点的关系。 2. 特…

【算法】——滑动窗口专题

阿华代码,不是逆风,就是我疯 你们的点赞收藏是我前进最大的动力!! 希望本文内容能够帮助到你!! 目录 一:长度最小的子数组 二:无重复字符的最长子串 三:最大连续1的个…

目前主流的人工智能学习框架有哪些?

随着人工智能(AI)技术的蓬勃发展,越来越多的AI学习框架相继推出,成为开发者、研究人员和企业构建机器学习(ML)和深度学习(DL)模型的首选工具。AI学习框架不仅提供了丰富的工具库和函…

揭开自然语言处理(NLP)的神秘面纱

时间:2024年 11月 05日 作者:小蒋聊技术 邮箱:wei_wei10163.com 微信:wei_wei10 音频:喜马拉雅 大家好,欢迎来到“小蒋聊技术” ,我是小蒋!。小蒋最近在学习清华大模型课程&…

C#:强大而优雅的编程语言

在当今的软件开发领域,C#作为一种广泛应用的编程语言,以其强大的功能、优雅的语法和丰富的生态系统,受到了众多开发者的喜爱。本文将深入探讨 C#的各个方面,展示它的魅力和优势。 一、C#的历史与发展 C#是由微软公司开发的一种面…

SQL CASE表达式与窗口函数

CASE 表达式是一种通用的条件表达式,类似于其他编程语言中的if/else语句。 窗口函数类似于group by,但是不会改变记录行数,能扫描所有行,能对每一行执行聚合计算或其他复杂计算,并把结果填到每一行中。 1 CASE 表达式…

C++之位算法

位算法 常见位运算总结 位1的个数 给定一个正整数 n,编写一个函数,获取一个正整数的二进制形式并返回其二进制表达式中 设置位 的个数(也被称为汉明重量)。 示例 1: 输入:n 11 输出:3 解释…

【OJ题解】C++实现字符串大数相乘:无BigInteger库的字符串乘积解决方案

🦄个人主页: 起名字真南 🦄个人专栏:【数据结构初阶】 【C语言】 【C】 【OJ题解】 目录 1. 引言2. 题目分析示例: 3. 解题思路4. C代码实现5. 代码详解6. 时间和空间复杂度分析7. 边界情况分析8. 总结 1. 引言 在开发中,有时我们…

用Python将PDF表格提取到文本、CSV和Excel文件中

从PDF文档中提取表格并将其转换为更易于处理的格式(如文本、CSV和Excel文件),是数据分析和信息管理中的常见需求。此过程可显著简化表格数据的处理,使数据的操作、分析和与其他数据集的集成更加便捷。无论是财务报表、研究论文&am…