一、HTTP和HTTPS的基本概念
HTTP超文本传输协议(HyperText Transfer Protocol)
设计目的:提供一种发布和接受HTML页面的方法
HTTP是以明文方式发送信息,不安全。
HTTP原理:
- 通过TCP建立连接,端口号一般为80,建立连接后,客户端发送请求
- 服务端收到请求后,给予相应的响应信息
HTTPS是以安全为目标的HTTP通道,是HTTP的安全版。HTPPS的基础是TSL/SSL。
TSl/SSL位于TCP/IP协议与各种应用层之间,为数据通信提供安全支持。
SSL协议可分为两层:
- SSL记录协议,它建立在TCP之上,为高层协议提供数据封装、压缩、加密等功能
- SSL握手协议,它建立在SSL记录协议之上,用于在实际传输开始前,通讯双方进行身份验证、协商密钥算法、交换加密密钥等
HTTPS的设计目标:
- 数据保密性
- 数据完整性
- 身份验证安全性
二、HTTP和HTTPS的区别
1. HTTP是以明文形式传输数据,HTTPS则是具有安全性的SSL加密传输协议
2. HTTPS的数据传输需要用到CA申请证书,需要一定费用
3. HTTP和HTTPS使用的连接方式不同,使用的端口也不同,HTTP使用80端口,HTTP使用443端口
4. HTTP的连接很简单,是无状态的。HTTPS是HTTP+SSL协议构成的可进行加密传输、身份验证的网络协议。
三、HTTPS相较于HTTP的改进
1. 双向的身份认证
步骤如下:
- client发起SSL握手信息给server要求连接
- server将整数发送给client
- client检查证书的合法性
- server要求client发送证书,并检验是否通过,认证成功后从客户端证书中获取客户端的公钥
2. 数据传输的机密性
client和server通信数据之前,会协商传输过程中使用的加密算法
3. SSL使用序列号保护通讯方免受报文重放攻击。
四、HTTPS的缺点
1. HTTPS握手比较费时,会使页面的加载时间延长
2. HTTPS连接缓存不如HTTP高效,会增加数据开销
3. HTTPS的安全是有范围的
4. SSL证书通常需要绑定IP,不能在同一IP上绑定多个域名,IPV4资源不足
5. 成本增加,HTTPS协议需要增加额外的计算资源消耗。
五、HTTPS的连接过程
标签:协议,HTTP,SSL,client,HTTPS,连接 From: https://www.cnblogs.com/return-study-wa/p/16332972.html