混合密码系统

混合密码系统概述

对称密码算法可以解决机密性问题,加解密速度比公钥密码速度快,但是存在密钥配送问题。

公钥密码算法可以解决密钥配送问题,但是直接使用公钥密码算法存在加解密速度慢,浪费计算资源的问题,大概是对称密码算法速度的百分之一。

混合密码系统(hybird cryptosystem)将对称密码算法公钥密码算法配合使用,用对称密码算法作为会话密钥来加密明文,提高加密解密速度。用公钥密码算法来加密对称密码算法中所使用的密钥,以保护会话密钥

混合密码系统通过对称密码算法解决通信中的机密性问题,通过对称密码算法解决密钥配送问题,充分发挥了两者的优势,而且弥补了两者的短板。

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

混合密码系统运用的三种密码技术:

  • 伪随机数生成器;
  • 对称密码,使用高强度的对称密码算法,并确保密钥具有足够的长度。
  • 公钥密码,使用高强度的公钥密码算法,并确保密钥具有足够的长度。

混合密码系统的加密过程

混合密码系统_第1张图片
混合密码系统的加密过程

如图所示:

  • 右半部分可以得到用对称密码加密的消息。
  • 左半部分可以得到用公钥密码加密的会话密钥。
  • 将它们组合之后,可以得到混合密码系统整体的密文。

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

混合密码系统的解密过程

混合密码系统_第2张图片
混合密码系统的解密过程

如图所示:

  • 分离:混合密码系统的密文是由“用公钥加密过的会话密钥”和“用对称密钥加密过的消息”组合而成的,因此我们首先需要按照事先的约定将两者分离。
  • 左半部分,通过接收者自己的公钥密码的私钥解密“用公钥加密过的会话密钥”,得到会话密钥。
  • 右半部分,通过会话密钥解密密文,得到明文。

你可能感兴趣的:(混合密码系统)