混合密码系统

(一)背景

公钥密码存在两个很大的问题。
(1)公钥密码的处理速度远远低于对称密码。
(2)公钥密码难以抵御中间人攻击

(二)介绍

混合密码系统( hybrid cryptosystem)是将对称密码和公钥密码的优势相结合的方法。一般情况下,将两种不同的方式相结合的做法就称为混合( hybrid )。

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

具体步骤

1:用对称密码加密消息。
2:通过伪随机数生成器生成对称密码加密中使用的会话密钥。
3:用公钥密码加密会话密钥。
4:从混合密码系统外部赋予公钥密码加密时使用的密钥。

在这里插入图片描述
在这里插入图片描述

(三)注意事项

1:混合密码系统中,伪随机数生成器被用于产生会话秘钥。如果伪随机数生成器的算法很差,生成的会话秘钥就有可能被攻击者推测出来。

2:混合密码系统中,对称密码被用于加密消息。我们需要使用高强度的对称密码算法,并确保秘钥具有足够的长度。同样,也需要使用合适的分组密码模式。

3:混合密码系统中,公钥密码被用于加密会话秘钥。需要使用高强度的公钥密码算法,并确保秘钥具有足够的长度。

4:需要注意保证混合密码系统中各个密码技术的平衡。其中运用了对称密码和公钥密码,无论其中任何一方的秘钥过短,都可能遭到集中攻击,因此对称密码和公钥密码长度必须具备同等的强度。

5:一般来说,公钥密码的强度应该要高于对称密码,因为对称密码的会话秘钥被破译后只会影响本次通信的内容,而公钥密码一旦被破译,从过去到未来的(用相同的公钥加密的)所有通信内容就都能够被破译了。

(四)混合密码系统的加密和解密
加密

在这里插入图片描述
1:准备明文
2:通过伪随机数生成器构建会话秘钥,这个会话秘钥会作为对称加密的秘钥,同时也作为公钥加密的明文
3:右半部分中通过会话秘钥对明文消息进行对称加密,得到加密消息
4:左半部分中,此时拿到会话秘钥,在混合加密中此时的会话秘钥就是明文。此时采用公钥加密方式对会话秘钥进行加密,依然是公钥加密,私钥解密。
5:通过公钥密码中公钥对会话秘钥进行加密后得到密文
6:将采用对称加密得到的密文和采用公钥加密得到的密文组合起来,组成最终的混合系统的密文
7:此时加密过程已经结束,整体的部分需要注意使用到了相同的随机数生成器生成的会话密码,此外密文和明文加密密文会一起组合在最终的发送报文中
8:此时公钥密码的私钥还未进行任何的工作,他会用于后面的解密工作中

解密

在这里插入图片描述

1:接收者拿到密文,密文包括俩个部分,明文加密和秘钥加密信息
2:混合密码系统的密文是由“用公钥密码加密的会话密钥”和“用对称密码加密的消息”组合而成的,因此我们首先需要将两者分离。只要发送者和接收者事先约定好密文的结构,将两者分离的操作就很容易完成。
3:此时经过分离后拿到秘钥加密部分,此时我们通过公钥加密中的私钥对这部分进行解密,经过解密拿到加密过程中的对称加密的秘钥
4:拿到对称加密的秘钥后就可以对右半部分的消息密文进行解密,解密完成成功拿到明文

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ZWZhangYu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值