2020-03-18 HTTPS传输过程解析

HTTPS协议=HTTP协议+SSL/TLS协议

在HTTPS传输数据过程中,分别用到了对称加密、非对称加密算法。

一次HTTPS请求过程,有两次HTTP数据传输。

第一次,客户端发起HTTP请求,服务端的443端口响应请求。

服务端持有非对称加密用到的公钥和私钥,把其中的公钥返回给客户端,保留私钥。

客户端接收到公钥后,验证其合法性,如果合法,则生成一个随机密钥存在本地,并利用接收到的公钥对随机密钥进行非对称加密。

第一次HTTP传输结束。

现在,客户端持有一个利用非对称加密算法加过密的随机密钥,开始进行第二次HTTP传输。

客户端把这个随机密钥提交到服务端,服务端利用私钥,对这个随机密钥进行非对称算法解密过程,拿到明文的随机密钥。

服务端再利用这个随机密钥,对数据进行对称加密,得到数据的密文,并响应到客户端。

客户端拿到数据的密文,利用存在本地的随机密钥,进行对称算法的解密过程,拿到明文数据。

第二次HTTP传输结束。

你可能感兴趣的:(2020-03-18 HTTPS传输过程解析)