https 简介

https 协议是建立在 http 协议之上的, 在 http 协议与 tcp 协议间, 添加了一个 SSL(Secure Socket Layer) 协议, 用于客户端和服务端进行密钥协商.

单向验证流程:

  • 客户端发起 http 请求
  • 服务端返回证书(公钥, 权威认证机构等信息)
  • 客户端验证证书
  • 客户端产生随机密钥(对称密钥)
  • 客户端使用服务端的公钥对对称密钥进行加密, 发送给服务端
  • 客户端与服务端使用对称密钥加密数据, 进行传输

双向验证流程:

  • 客户端发起 http 请求
  • 服务端返回证书(公钥, 权威认证机构等信息)
  • 客户端验证证书
  • 客户端发送自己的证书
  • 服务端验证收到的证书
  • 客户端产生随机密钥(对称密钥)
  • 客户端使用服务端的公钥对对称密钥进行加密, 发送给服务端
  • 客户端与服务端使用对称密钥加密数据, 进行传输

为什么不使用非对称密钥加密进行数据传输呢?

  • 对客户端的要求加大, 必须要有合法的证书, 非法证书服务端可能不认
  • 一般数据没有必要使用安全度更高的非对称加密算法, 而且非对称加密的速度不理想

如果觉得有帮助, 可以扫描右边的微信打赏码支持一下.

Leave a Reply

Your email address will not be published. Required fields are marked *