2.8. HTTPS

2.8.1. 简介

HTTPS(HyperText Transfer Protocol over Secure Socket Layer)可以理解为HTTP+SSL/TLS, 即 HTTP 下加入 SSL 层,HTTPS 的安全基础是 SSL。

2.8.2. 交互

2.8.2.1. 证书验证阶段

  • 浏览器发起 HTTPS 请求
    • 服务端返回 HTTPS 证书
        • 其中证书包含:
          • 颁发机构信息
          • 公钥
          • 公司信息
          • 域名
          • 有效期
          • 指纹
  • 客户端验证证书是否合法,如果不合法则提示告警

2.8.2.2. 数据传输阶段

  • 当证书验证合法后,在本地生成随机数
  • 通过公钥加密随机数,并把加密后的随机数传输到服务端
  • 服务端通过私钥对随机数进行解密
  • 服务端通过客户端传入的随机数构造对称加密算法,对返回结果内容进行加密后传输