如何理解密码技术之数字信封
数字信封是公钥密码体制在实际中的一个应用,是用加密技术来保证只有固定的特定收信人才能阅读通信的内容。
对称加密算法的优点是加解密运算非常快,适合处理大批量数据,但其密钥的分发与管理比较复杂。而非对称密码算法的特点是公钥与私钥分离,非常适合密钥的分发与管理,但其运行速度不快,又不适合处理大批量数据。
如果将对称加密算法和非对称加密算法的优点结合起来,则技能处理大批量数据,又能简化密钥的分发与管理,于是数字信封机制应运而生。
数字信封的功能类似于普通信封,采用对称密码算法对消息进行加密类似于信纸上的内容,采用非对称密码算法对对称密钥加密类似于信封,信封将信纸包装起来,保证了消息的安全性。
数字信封机制的具体流程如下:
- 消息发送方需要预先获得消息接收方的公钥;
- 消息发送方随机产生对称密钥,并用该密钥和对称算法对消息进行加密;
- 消息发送方用消息接收方的公钥和非对称算法将上述对称密钥进行加密;
- 消息发送方将消息密文和对称密钥密文一起发送给消息接收方;
- 消息接收方收到消息密文和对称密钥密文;
- 消息接收方使用自己的私钥和非对称算法对对称密钥密文进行解密后获得对称密钥;
- 消息接收方使用上述对称密钥和对称算法对消息密文进行解密后得到消息明文;
PKCS#7 规范规定了数字信封的具体封装格式,使用 ASN.1 描述。
简单描述:在数字信封中,信息发送方采用对称加密来加密信息内容,然后将此对称密钥用接收方的公开密钥来加密(称为数字信封)之后,将它和加密后的信息一起发送给接收方,接收方先用相应的私钥打开数字信封,得到对称密钥,然后使用对称密钥解开加密信息。