HTTPS协议


1. HTTPS 的实现原理

HTTPS 会对传输内容进行加密,加密方法是非对称加密,非对称加密之作用在证书验证阶段。

HTTPS 整体过程分为证书验证和数据传输阶段。

1.1 证书认证阶段

1)浏览器发起 HTTPS 请求

2)服务端返回HTTPS证书

3)客户端验证证书是否合法,如果不合法就提示告警

1.2 数据传输阶段

1)当证书验证合法后,在本地生成随机数

2)通过公钥加密随机数,并把加密后的随机数传输到服务端

3)服务端通过私钥对随机数进行加密

4)服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后传输

2 为什么数据传输使用对称加密

1)非对称加密的加解密效率低,而http的应用场景中通常端与端之间存在大量的交互

2)一对公私钥只能实现单向的加解密,所以 HTTPS 中内容传输加密采取的是对称加密,而不是非对称加密。