前提
由于 HTTP 协议通信的不安全性,所以人们为了防止信息在传输过程中遭到泄漏或者篡改,就想出来对传输通道进行加密的方式 https。
介绍
https 是一种加密的超文本传输协议,它与 HTTP 在协议差异在于对数据传输的过程中,https对数据做了完全加密。由于 http 协议或者 https 协议都是处于 TCP 传输层之上,同时网络协议又是一个分层的结构,所以在 tcp 协议层之上增加了一层 SSL(Secure Socket Layer,安全层)或者 TLS(Transport Layer Security) 安全层传输协议组合使用用于构造加密通道;
申请过程
我这边是在阿里云上申请的免费证书,直接下载下来部署到web服务器即可!
客户端请求交互过程
1、客户端发起请求
1、建立TCP连接
2、支持的协议版本(TLS/SSl)
3、客户端申城随机数client.random
4、客户端支持的加密算法
5、SESSIONID,用于保持同一个会话
2、服务器收到请求响应
1、确认加密通道协议版本
2、服务器生成随机数server.random
3、确认