http和https的区别
1 http是明文传输,所以容易有以下三个风险:
- 窃听风险 通信内容可以被窃听
- 篡改风险 比如强制植入垃圾广告
- 冒充风险 比如冒充钓鱼网站
https在http的基础上采用了SSL/TLS协议,该协议很好的解决了以上三个风险。
- https 采用混合加密对信息加密,所以通信内容被窃听了也无法解密。
- 校验机制 采用摘要算法为数据生成[指纹],相当于一个id。
- 服务器公钥放入到数字证书中。
2 http的连接相对简单,只需要tcp三次握手即可建立连接,而https在三次握手之后需要进行SSL/TLS的握手过程。
3 端口号不同,http的端口号是80,https的端口号是443
4 https需要申请数字证书。
http各版本的区别
http主要有1.0, 1.1, 2以及3的版本
1.1相对于1.0主要是以下改进
- 采用长连接方式取代短连接,所谓的长连接就是传输数据的时候只需要建立一次tcp连接,不需要为每次传输信息建立一个新的tcp连接。
- 支持流水线传输,即可以连续发送请求而不必等待前一个请求的响应再发送该请求。
2.0相当于1.1主要是以下改进
- 采用了头部压缩
- 传递的数据用二进制表式取代了文本格式表示,因为计算机只认识二进制,虽然对人的可读性不好