混合密码系统解析

1. 概述

        混合密码系统(hybrid cryptosystem)是将对称密码和非对称密码的优势相结合的方法。一般情况下,将两种不同的方式相结合的做法就称为混合(hybrid)。用混合动力汽车来类比的话,就相当于是一种将发动机(对称密码)和电动机(非对称密码)相结合的系统。

        混合密码系统中会先用快速的对称密码来对消息进行加密,这样消息就被转换为了密文从而也就保证了消息的机密性。然后我们只要保证对称密码的密钥的机密性就可以了。这里就轮到非对称密码出场了,我们可以用非对称密码对加密消息时使用的对称密码的密钥进行加密。由于对称密码的密钥一般比消息本身要短,因此非对称密码速度慢的问题就可以忽略了。

        将消息通过对称密码来加密,将加密消息时使用的密钥通过非对称密码来加密,这样的两步密码机制就是混合密码系统的本质。

        下面我们来罗列一下混合密码系统的组成机制。

  • 用对称密码加密消息

  • 通过伪随机数生成器生成对称密码加密中使用的会话密钥

  • 用非对称密码加密会话密钥

  • 从混合密码系统外部赋予非对称密码加密时使用的密钥

        混合密码系统运用了伪随机数生成器、对称密码和非对称密码这三种密码技术。正是通过这三种密码技术的结合,才创造出了一种兼具对称密码和公钥密码优点的密码方式。

2. 混合密码系统的加密过程

        这张图乍看起来很复杂,我们来仔细解释一下。

  • 明文、密钥、密文

        首先看中间虚线围成的大方框,这里就是混合密码系统的加密部分。

        上面标有“消息”的方框就是混合密码系统中的明文,左边标有“接收者的公钥”的方框就是混合密码系统中的密钥,而下面标有“用公钥密码加密的会话密钥”和“用对称密码加密的消息”所组成的方框,就是混合密码系统中的密文。

  • 加密消息

        中间的大虚线方框分成左右两部分。

        右半部分是“加密消息”的部分(对称密码),左半部分是“加密会话密钥”的部分(公钥密码)。

        消息的加密方法和对称密码的一般加密方法相同,当消息很长时,则需要使用分组密码的模式。即便是非常长的消息,也可以通过对称密码快速完成加密。这就是右半部分所进行的处理。

  • 加密会话密钥

        左半部分进行的是会话密钥的生成和加密操作。

        会话密钥(session key)是指为本次通信而生成的临时密钥,它一般是通过伪随机数生成器产生的。伪随机数生成器所产生的会话密钥同时也会被传递给右半部分,作为对称密码的密钥使用。

        接下来,通过公钥密码对会话密钥进行加密,公钥密码加密所使用的密钥是接收者的公钥。

        会话密钥一般比消息本身要短。以一封邮件的加密为例,消息就是邮件的正文,长度一般为几千个字节,而会话密钥则是对称密码的密钥,最多也就是十几个字节。因此即使公钥加密速度很慢,要加密一个会话密钥也花不了多少时间。

        好,我们已经讲解了上图中的几个重点部分。会话密钥的处理方法是混合密码系统的核心,一言以蔽之:

        会话密钥是对称密码的密钥,同时也是非对称密码的明文

        请大家一定要理解会话密钥的双重性,因为将对称密码和非对称密码两种密码方式相互联系起来的正是会话密钥。

  • 组合

        如果上面的内容都理解了,剩下的就简单多了。

        我们从右半部分可以得到“用对称密码加密的消息”,从左半部分可以得到“用非对称密码加密的会话密钥”,然后我们将两者组合起来。所谓组合,就是把它们按顺序拼在一起。组合之后的数据就是混合密码系统整体的密文。

3. 混合密码系统的解密过程

  • 分离

        混合密码系统的密文是由“用公钥密码加密的会话密钥”和“用对称密码加密的消息”组合而成的,因此我们首先需要将两者分离。只要发送者和接收者事先约定好密文的结构,将两者分离的操作就很容易完成。

  • 解密会话密钥

        会话密钥可以用公钥密码进行解密,为此我们就需要解密密钥,也就是接收者的私钥。除了持有私钥的人以外,其他人都不能够解密会话密钥。解密后的会话密钥将被用作解密消息的密钥。

  • 解密消息

        消息可以使用对称密码进行解密,解密的密钥就是刚刚用公钥密码解密的会话密钥。

        上述流程正好是“混合密码系统的加密”的逆操作。

4. 混合密码系统的具体例子

        混合密码系统解决了公钥密码速度慢的问题,并通过公钥密码解决了对称密码的密钥配送问题。著名的密码软件PGP、以及网络上的密码通信所使用的SSL/TLS都运用了混合密码系统。

5. 参考

        图解密码技术(第3版) (日)结城浩 著;周自恒 译; 人民邮电出版社;2016-06-01

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

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

相关文章

openstack-同一物理机中透传不同GPU时的nova配置记录

文章目录 前言一、不同加速卡的型号信息二、计算节点增加配置信息1.nova-compute服务的nova.conf 三、控制节点增加配置信息1.nova-conductor服务的nova.conf2.nova-scheduler服务的nova.conf3.nova-api服务的nova.conf 四、准备实例模版五、进行测试,创建虚拟机、检…

400技术汇 教你如何成为抓包高手!

Wireshark是目前使用最广泛的网络抓包分析工具,也是每一位网络攻城狮电脑里必装神器。当网络里发现恶意攻击、某人下载流量过大、设备互联丢包、协议交互失败等等情况时,通过Wireshark抓包定位问题根源,是最直接有效的手段。 然而如此强大的…

Excel 解析十六进制并查找

A1 格由多个人名及其考勤情况组成,比如,c 是十六进制的 1100,表示第 1、2 天到场,第 3、4 天缺席。目前只有 4 天的考勤。 AB1alice,c,bob,7,clara,a,mike,9/input: name and presence22/input: the day to be queried 要求根据…

conda install xformers -c xformers/label/dev 的安装问题

在StableSR项目框架中,需要执行 conda install xformers -c xformers/label/dev 但是报错,错误显示,版本不匹配,如下所示: 我改用pip来安装,好像就不报错了: pip install xformers

我原以为政务类网站不追求漂亮,打脸啦,漂亮得颠覆你认知。

我原本以为政务类网站一定时沉稳、工整、信息量大的,这些和漂流都关联不上,直到最近看了一些网站,发现我的认识狭隘了。 政务类网站的设计风格通常需要注重以下几个方面: 稳重和专业感: 政务类网站需要给人以稳重、正…

【HW必备】用友NC-Cloud存在17处漏洞合集

漏洞简介 NC Cloud是用友公司推出的大型企业数字化平台。支持公有云、混合云、专属云的灵活部署模式。NC Cloud完全基于云原生架构,技术先进、性能稳定、自主安全可控,支撑大中型以及超大型集团企业N层多site混合云部署方案,支持整个系统高可…

前端也需要知道的一些常用linux命令

前端也需要知道的一些常用linux命令 1.问题背景2.连接工具(SecureCRT_Portable)a.下载工具b.连接服务器c.登录到root账户 3.基本命令a.cd命令和cd ..b.ll命令和ls命令c:cp命令d.rm命令e:rz命令f.unzip命令g.mv命令h.pwd命令(这里没有用到&…

Isaac Lab 使用 Stable Baselines3 实现 Multi Input Policy

目前Isaac Lab支持的强化学习框架 Isaac Lab支持的强化学习框架介绍http://t.csdnimg.cn/h8u7Z调研下来,能够实现字典状态量,也就是多输入状态量的有 rsl_rl、sb3、(skrl不确定),rl_games是显然不支持的,自己改了一版&#xff0…

servlet的生命周期

1、Servlet的生命周期就是servlet类对象什么时候创建?什么时候调用对应的方法,什么时候销毁。 对象的生命周期: Student student new Student(); //创建对象 student.setName("eric"); // 使用对象 student.show();// 使用对象 student null; // 销毁…

踩坑——VS添加相对路径

需求:我需要将模型放到程序里面。 过程:附加包含目录添加目录,发现找不到onnx模型文件。我就想是不是相对路径不对,该来搞去都不对。 解决办法: 相对路径值得是运行程序的当下环境,什么是运行程序呢&…

Tomcat简介与安装

目录 一、Tomcat 简介 1、Tomcat好帮手---JDK 2、安装Tomcat & JDK 1、系统环境说明 2 、安装JDK 3、安装Tomcat 二、Tomcat目录介绍 1、tomcat主目录介绍 2、webapps目录介绍 3、Tomcat配置介绍(conf) 4、Tomcat的管理 5、tomcat 配置管…

微信支付还能这么玩?设置好自动扣费,停车费、电影票一键搞定

在这个快节奏的时代,微信支付以其便捷性成为我们日常生活中不可或缺的一部分。但你知道吗? 微信支付的功能远不止于此,它还能通过自动扣费功能,让我们的生活变得更加智能和轻松。从停车费到电影票,一键搞定&#xff0…

【Python/Pytorch - 网络模型】-- SVD算法

文章目录 文章目录 00 写在前面01 基于Pytorch版本的SVD算代码02 理论知识 00 写在前面 (1)矩阵的奇异值分解在最优化问题、特征值问题、最小二乘方问题、广义逆矩阵问题及统计学等方面都有重要应用; (2)应用&#…

pgAdmin后台命令执行漏洞(CVE-2023-5002)

​ 我们可以看到针对于漏洞 CVE-2022-4223,官方做了一定的修复措施。 web\pgadmin\misc_init_.py#validate_binary_path ​ 首先是添加了 login_required​ 进行权限校验。在 Flask 框架中,login_required​ 装饰器通常与 Flask-Login 扩展一起使用。…

探索Linux的奇妙世界 :第三关---Linux的基本指令(中篇)

1. man指令(重要) Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问 Linux 手册页的命令是man 语法 : man [ 选项 ] 命令。 常用选项: -k 根据关键字搜索联机帮助 num 只在第num章节找 -a 将所有章节的都显…

游戏行业新质生产力洞察报告 | 七成游戏企业技术投入显著增加 AI应用率99%

近日,伽马数据发布了《中国游戏产业新质生产力发展报告》。报告围绕中国游戏产业推动“新质生产力”发展的关键路径和重点领域进行深入讨论,并通过对相关数据和典型案例的深入分析,清晰呈现当前中国游戏企业在发展新质生产力过程中的探索与实…

【服务器02】之【阿里云平台】

百度一下阿里云官网 点击注册直接使用支付宝注册可以跳过认证 成功登录后,点击产品 点击免费试用 点击勾选 选一个距离最近的 点满GB 注意:一般试用的时用的是【阿里云】,真正做项目时用的是【腾讯云】 现在开始学习使用: 首先…

STM32学习之一:什么是STM32

目录 1.什么是STM32 2.STM32命名规则 3.STM32外设资源 4. STM32的系统架构 5. 从0到1搭建一个STM32工程 学习stm32已经很久了,因为种种原因,也有很久一段时间没接触过stm32了。等我捡起来的时候,发现很多都已经忘记了,重新捡…

2024年【低压电工】考试题库及低压电工考试报名

题库来源:安全生产模拟考试一点通公众号小程序 低压电工考试题库是安全生产模拟考试一点通总题库中生成的一套低压电工考试报名,安全生产模拟考试一点通上低压电工作业手机同步练习。2024年【低压电工】考试题库及低压电工考试报名 1、【单选题】()仪表…

计算机网路面试HTTP篇三

HTTPS RSA 握手解析 我前面讲,简单给大家介绍了的 HTTPS 握手过程,但是还不够细! 只讲了比较基础的部分,所以这次我们再来深入一下 HTTPS,用实战抓包的方式,带大家再来窥探一次 HTTPS。 对于还不知道对称…