背景
有一个版本,客户端在某个手机上拉取不到服务器信息,说是要把网址改成 https。当时不太清楚 http 和 https 有什么区别,今天有空,翻翻资料记录下。
什么是 https
https 在 http 和 tcp 中间加了 SSL/TSL 协议。
https 采用对称加密和非对称加密结合的混合加密。
在通信建立前采用非对称加密,通信过程中采用对称加密。
万字长文,一文搞懂TCP、IP和HTTP、HTTPS
区别
- 安全性不同:http 没有用于数据加密和数据完整性校验的安全机制,而 https 用数字证书来保障双方的通信。
- 监听端口不同:http 监听80端口,https 监听443端口。
- 传输内容不同:http 以纯文本明文格式传输,https 以密文格式传输。
- 协议头不同:http 的URL以“http://”开头,https 以“https://”开头。
https 工作原理
客户端找服务端建立连接,服务端发送数字证书给客户端,客户端通过预置的证书非对称公钥验证并得到服务端提交到CA的非对称公钥,客户端随机生成对称密钥,并通过服务端的非对称公钥加密,发给服务端,服务端用非对称私钥解析得到客户端发送的对称密钥,后续数据通过对称密钥来通信。
http和https的区别是什么呢?