HTTPS是什么
HTTPS是在HTTP通信接口部分用SSL和TLS协议代替,并对传输数据进行加密,是HTTP协议的安全版。
HTTPS的作用
- 对数据进行加密,并建立一个信息安全通道,来保证传输过程中的数据安全;
- 对网站服务器进行真实身份认证。
为什么需要HTTPS
在HTTP协议中有可能存在信息窃取或身份伪装等安全问题。使用HTTPS通信机制可以有效地防止这些问题,接下来,我们先来了解下 HTTP协议存在的哪些问题:
- 通信使用明文(不加密),内容可能被窃听
- 无法证明报文的完整性,所以可能遭篡改
- 不验证通信方的身份,因此有可能遭遇伪装
HTTPS的工作流程

- 客户端发起一个HTTPS(比如https://juejin.im/user/4283353031252967)的请求,根据RFC2818的规定,客户端t知道需要连接服务端的443(默认)端口。
- 服务端把事先配置好的公钥证书(public key certificate)返回给客户端。
- Client验证公钥证书:比如是否在有效期内,证书的用途是不是匹配客户端请求的站点,是不是在CRL吊销列表里面,它的上一级证书是否有效,这是一个递归的过程,直到验证到根证书(操作系统内置的Root证书或者Client内置的Root证书)。如果验证通过则继续,不通过则显示警告信息。
- 客户端使用伪随机数生成器生成加密所使用的对称密钥,然后用证书的公钥加密这个对称密钥,发给服务端。
- 服务端使用自己的私钥(private key)解密这个消息,得到对称密钥。至此,客户端和服务端双方都持有了相同的对称密钥。
- 服务端使用对称密钥加密“明文内容A”,发送给客户端。
- 客户端使用对称密钥解密响应的密文,得到“明文内容A”。
- 客户端再次发起HTTPS的请求,使用对称密钥加密请求的“明文内容B”,然后服务端使用对称密钥解密密文,得到“明文内容B”。
HTTP 与 HTTPS 的区别
- HTTP 是明文传输协议,HTTPS 协议是由 SSL+HTTP 协议构建的可进行加密传输、身份认证的网络协议,比 HTTP 协议安全。
- HTTPS比HTTP更加安全,对搜索引擎更友好,利于SEO,谷歌、百度优先索引HTTPS网页;
- HTTPS需要用到SSL证书,而HTTP不用;
- HTTPS标准端口443,HTTP标准端口80;
- HTTPS基于传输层(TSL(Transport Layer Security)传输层安全性协议),HTTP基于应用层;
- HTTPS在浏览器显示安全锁,HTTP没有显示;
HTTPS参考链接
HTTPS是什么
HTTPS是在HTTP通信接口部分用SSL和TLS协议代替,并对传输数据进行加密,是HTTP协议的安全版。
HTTPS的作用
为什么需要HTTPS
在HTTP协议中有可能存在信息窃取或身份伪装等安全问题。使用HTTPS通信机制可以有效地防止这些问题,接下来,我们先来了解下 HTTP协议存在的哪些问题:
HTTPS的工作流程
HTTP 与 HTTPS 的区别
HTTPS参考链接