HTTPS 主要工作流程:
1客户端发起 HTTPS 请求,连接到服务端的 443 端口。
2服务端有一套数字证书(证书内容有公钥、证书颁发机构、失效日期等)。
3服务端将自己的数字证书发送给客户端(公钥在证书里面,私钥由服务器持有)。
4客户端收到数字证书之后,会验证证书的合法性。如果证书验证通过,就会生成一个随机的对称密钥,用证书的公钥加密。
5客户端将公钥加密后的密钥发送到服务器。
6服务器接收到客户端发来的密文密钥之后,用自己之前保留的私钥对其进行非对称解密,解密之后就得到客户端的密钥,然后用客户端密钥对返回数据进行对称加密,酱紫传输的数据都是密文啦。
7服务器将加密后的密文返回到客户端。
8客户端收到后,用自己的密钥对其进行对称解密,得到服务器返回的数据。
更多技术分享,请持续关注云和数据!
1客户端发起 HTTPS 请求,连接到服务端的 443 端口。
2服务端有一套数字证书(证书内容有公钥、证书颁发机构、失效日期等)。
3服务端将自己的数字证书发送给客户端(公钥在证书里面,私钥由服务器持有)。
4客户端收到数字证书之后,会验证证书的合法性。如果证书验证通过,就会生成一个随机的对称密钥,用证书的公钥加密。
5客户端将公钥加密后的密钥发送到服务器。
6服务器接收到客户端发来的密文密钥之后,用自己之前保留的私钥对其进行非对称解密,解密之后就得到客户端的密钥,然后用客户端密钥对返回数据进行对称加密,酱紫传输的数据都是密文啦。
7服务器将加密后的密文返回到客户端。
8客户端收到后,用自己的密钥对其进行对称解密,得到服务器返回的数据。
更多技术分享,请持续关注云和数据!