HTTPS也就是在HTTP上加了SSL/TLS加密协议。
也就是通过SSL/TLS进行加密的。
首先客户端先向服务器发了自己的TLS版本号,自己支持的加密套件和一个随机值1。服务端收到后保存随机值1,然后也生成一个随机值2发给客户端,同时发送的还有证书和公钥。此时客户端收到之后也保存随机值2,同时生成一个预主密钥(也是一个随机值)通过得到的公钥进行加密传给服务端,服务端收到之后使用私钥进行解密,得到预主密钥。此时将客户端和服务端的随机数1,随机数2,预主密钥相加得到一个会话密钥,然后双方就根据这个会话密钥进行对称加密。