首先,HTTP = HTTP + SSL/TLS,TLS是SSL的后续版本。
Https 工作流程
- 客户端发起 Https 请求,连➓到服务器✁ 443 端口。
- 服务器必须要有一套数字证书(证书内容有公钥、证书颁发机构、失效日期等)。
- 服务器将自己✁数字证书发送给客户端(公钥在证书里面,私钥由服务器持有)。
- 客户端收到数字证书之后,会验证证书✁合法性。如果证书验证通过,就会生成一 个随机✁对称密钥,用证书✁公钥加密。
- 客户端将公钥加密后✁密钥发送到服务器。
- 服务器➓收到客户端发来✁密文密钥之后,用自己之前保留✁私钥对其进行非对称 解密,解密之后就得到客户端✁密钥,然后用客户端密钥对返回数据进行对称加密, 酱紫传输✁数据都✁密文啦。
- 服务器将加密后✁密文返回到客户端。
- 客户端收到后,用自己✁密钥对其进行对称解密,得到服务器返回✁数据。