https 证书

客户 | CA证书机构 | 服务方

客户 C: 持有预装的 CA公钥!

CA: CA私钥,CA公钥

服务方 S: S私钥,S公钥,证书. 证书=CA私钥加密(S公钥,服务方各种信息)

握手过程

Client Server
发起连接 — – - - - - - - ->
<— 三次握手 —>
随机x1,加密算法数组[]f —x1, []f—>
<–x2,f— 随机x2,从加密算法数组[]f中,选取一个支持的算法f
加密过的证书=f加密(S证书)
<—- 发送 加密过的证书
S公钥, 服务器信息=CA公钥解密(f解密(加密过的证书) )
验证 服务器信息
随机 x3
XX =S公钥加密(x3) –XX–>
x3=S私钥解密(XX)
使用 密钥x1,x2,x3 通信 <—> 使用 密钥x1,x2,x3 通信