简述HTTPS(四):通信过程

客户端与服务器建立HTTPS通信的过程可以分为以下几步:

一、客户端向服务器发起HTTPS请求

请求报文中包括客户端所支持的SSL版本以及加密组件(所使用的的加密算法)

二、服务器向客户端发送数字证书

1、服务器先发送应答,应答中包含SSL版本以及从客户端请求中筛选出来的加密组件
(实质就是协商决定使用哪种加密算法)
2、服务器发送Certificate报文,报文中包含公开密钥证书(数字证书)

三、客户端验证数字证书

1、客户端用CA的公钥解密数字证书,验证证书的有效性,取出服务器的公钥

确认颁发此证书的 是真实有效的CA
确认该服务器的公钥是值得信赖的

2、客户端根据协商好的加密算法生成master secret
(在之后交换数据的过程中使用的共享密钥)

3、客户端使用服务器的公钥加密报文

四、服务器得到master secret

服务器使用自己的私钥解密报文,取出master-secret(之后交换数据阶段使用的共享密钥)
至此,SSL连接就算建立完成

五、客户端与服务器交换数据

在这个阶段,客户端/服务器使用共享密钥来加密/解密报文

原文地址:https://www.cnblogs.com/baebae996/p/13810838.html