HTTPS 协议的工作原理
HTTPS 协议的工作原理
类似于 token 鉴权
- 客户端使用 https url 访问服务器,则要求 web 服务器建立 ssl 链接。
- web 服务器接收到客户端的请求之后,会将网站的证书(证书中包含了公钥),传输给客户端。
- 客户端和 web 服务器端开始协商 SSL 链接的安全等级,也就是加密等级。
- 客户端浏览器通过双方协商一致的安全等级,建立会话密钥,然后通过网站的公钥来加密会话密钥,并传送给网站。
- web 服务器通过自己的私钥解密出会话密钥。
- web 服务器通过会话密钥加密与客户端之间的通信。
怎么做
- 客户端先从服务器获取到证书,证书中包含公钥
- 客户端将证书进行校验
- 客户端生成一个对称密钥,用证书中的公钥进行加密,发送给服务器
- 服务器得到这个请求后用私钥进行解密,得到改密钥
- 客户端以后发出后续请求,都使用这个对称密钥进行加密
- 服务器收到这个密文也用这个密钥进行解密
解决了什么问题
因为当年存在着臭名昭著的“运营商劫持”。被劫持后这里下载了某 Q 浏览器。
所以,为了避免这个问题,就引入了 HTTPS,用来对传输数据加密。