https的工作流程
(1)客户端向服务器提出请求,发出SSL握手信号。
(2)服务器发出回应,并出示服务器证书(公钥),显示服务器站点身份。
(3)客户端验证服务器证书,并生成一个随机的会话密钥,密钥长度达到128位。
(4)客户端用服务器的公钥加密该会话密钥,产生加密会话密钥。
(5)客户端对该会话密钥进行签名,产生客户端签名。
(6)客户端将加密会话密钥发送给服务器。
(7)客户端将客户端签名与客户端证书(公钥)发送给服务器。
(8)服务器用自己的私钥解密加密会话密钥得出真正的会话密钥。
(9)服务器通过会话密钥、客户端签名、客户端公钥验证客户端身份。
(10)客户端和服务器都拥有同样的会话密钥, 并且确认了对方的身份,双方使用这个会话密钥来加密通讯内容。