看完这篇文章,我奶奶都懂了https的原理……( 六 )

这样内容是可以加密传输了 , 但是上图中第一步协商密钥的过程又同样存在安全的问题!万一小王截获了协商密钥的数据 , 那后续加密传输的数据对小王来说无异于未加密!所以 , 对称加密存在密钥协商的问题!

非对称加密

基于对称加密存在的问题 , 又有了非对称加密 。 非对称加密算法需要一组密钥对 , 分别是公钥和私钥 , 这两个密钥是成对出现的 。 公钥加密的内容需要用私钥解密 , 私钥加密的内容需要用公钥解密!私钥由服务器自己保存 , 公钥发送给客户端 。 客户端拿到公钥后就可以对请求进行加密后发送给服务端了 , 这时候就算被小王截获 , 小王没有私钥也无法解密发送的内容 , 这样确保了客户端发送到服务端数据的“安全”!但是由于公钥也需要通过网络发送给客户端 , 同样能被小王截获 , 这样服务器私钥加密后的内容依然可以被小王截获并解密 , 并且非对称加密的效率很低 。

推荐阅读