《图解密码技术》第六章
- 混合密码系统:hybrid cryptosystem,会话密钥:session key
混合密码系统:用对称密钥来加密明文,用公钥密码来加密对称密码中所使用的密钥。
混合密码系统
对称密码与公钥密码
对称密码:需要解决密钥配送问题
公钥密码:处理速度远低于对称密码(通过混合密码系统解决),难以抵御中间人攻击(通过对公钥进行认证解决)
混合密码系统
混合密码系统是将对称密码和公钥密码的优势相结合的方法。
混合密码系统组成机制:
- 对称密码加密消息
- 伪随机数生成器生成对称密钥加密中使用的会话密钥
- 公钥密码加密会话密钥
- 从混合密码系统外部赋予公钥密码加密是使用的密钥
加密
会话密钥:为本次通信而生成的临时密钥,一般通过伪随机数生成器生成。
- 会话密钥是混合密码系统的核心
- 会话密钥是对称密码的密钥,同时也是公钥密码的明文
- 将对称密码和公钥密码两种密码方式相互联系起来的正是会话密钥
解密
分离:只要发送者和接收者事先约定好密文的结构,分离很容易完成
混合密码系统的具体例子
著名密码软件PGP、以及网上的密码通信所使用的SSL/TLS都运用了混合密码系统。
怎样才是高强度的混合密码系统
伪随机数生成器
用它来产生会话密钥,如果伪随机数生成器的算法不好,会话密钥就可能被推测出来。
对称密码
要使用高强度的对称密码算法,确保密钥具有足够长度,选择使用合适的分组密码模式
公钥密码
使用高强度的公钥密码算法,确保密钥具有足够长度
密钥长度的平衡
对称密码与公钥密码的密钥长度必须具备同等的强度,然而,考虑到长期运用,公钥密码的强度应该要高于对称密码,因为对称密码的会话密钥破译只会影响到本次通信的内容,公钥密码一旦被破译,从过去到未来所有通信内容就读能够被破译了
密码技术的组合
- 数字签名:单项散列函数和公钥密码组合而成
- 证书:公钥和数字签名组合而成
- 消息认证码:单项散列函数和密钥组合而成,也可以通过对称密码来生成
- 伪随机数生成器,可以使用对称密码、单项散列函数或公钥密码来构建
- 还有一些神奇的系统:电子投票、盲签名、零知识证明、虚拟货币比特币等