https原理

Posted yibinpan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了https原理相关的知识,希望对你有一定的参考价值。

单向验证

客户端发起连接TCP三次握手建立连接后,客户端告诉服务器ssl版本,服务器返回ssl版本及公钥,客户端验证公钥,客户端将本地支持的加密算法告诉服务器,服务器选择一种返回给客户端,客户端再用公钥加密本地生成的私钥发给服务端,服务端解密后用获得的私钥加密消息互相发送。

 

双向验证:

客户端发起连接TCP三次握手建立连接后,客户端告诉服务器ssl版本,服务端返回ssl版本及公钥,客户端验证公钥,客户端将自己的公钥发送给服务端,服务端验证公钥,客户端将本地支持的加密算法告诉服务端,服务端选择一种加密算法后用客户端公钥加密返回给客户端,客户端解密获得加密算法,客户端再用服务端公钥加密本地生成的对称加密的私钥发给服务端,服务端解密后用获得的私钥加密消息互相发送。

 

https重点:

客户端需要把自己生成的对称加密的私钥传给服务端,双方用私钥加密消息通信。

 

单向验证与双向验证的区别:

单向验证客户端不提供客户端公钥,服务端选择的加密算法明文传输给客户端。

双向验证客户端提供客户端公钥,服务端用客户端公钥加密"选择的加密算法"传输给客户端。

 

charles抓包原理

对于客户端来说它是服务器,对于目标服务器来说它是客户端。

以上是关于https原理的主要内容,如果未能解决你的问题,请参考以下文章

翻译: 漫画HTTPS原理五 证书和证书颁发机构

翻译: 漫画HTTPS原理二 了解对称和非对称加密

https工作原理

Android之网络—第二篇(Https原理)

翻译: 漫画HTTPS原理三 浏览器和互联网之间的秘密握手

HTTPS 原理分析