Lmxy1990 ' Blog

HTTPS 认证模型

协议模型:

  1. 第一步(客户端/服务器的证书,随机数,算法,协议交换):
    • 客户端产生随机数RNC
    • 客户端发送客户端的证书,协议(SSL/TLS),算法信息,RNC给服务器.
    • 服务断接收到请求,产生服务端的随机数RNS
    • 服务端回复服务器的证书,协议(SSL/TLS),算法信息,RNS给客户.
  2. 第二步(客户端/服务器向认证机构校验证书信息):
    • 客户端向第三方/本地信任库认证接收到的服务器证书信息.
    • 服务器断向第三方/本地信任库校验客户端的证书信息
  3. 第三步(生成主密钥 Primary Master Secret):
    • 客户端产生随机数PMS.
    • 客户端根据协议(SSL/TLS),服务器的证书公钥生成加密过的PMS.
    • 客户端向服务器发送加密过的PMS.
    • 服务器与接收加密过的PMS,并根据服务器的证书私钥解密出PMS.
    • 客户端与服务端保存公共私钥(RNC+RNS+PMS)作为共同的私钥.
  4. 第四步(会话密钥确认):
    • 客户端通过PMS产生会话密钥.
    • 客户端数据使用会话密钥加密发送给服务器.
    • 服务器使用PMS产生对应的密钥.
    • 服务使用会话密钥解密接收到的数据.
    • 服务器发送确认信息给客户端.
    • 终止握手.
  5. 第五步(正式会话):
    • 客户端数据使用会话密钥加密 发送给服务端.
    • 服务端接收数据使用相同的会话密钥解密出数据.
    • 服务器使用会话密钥加密数据发送给客户端
    • 客户端使用会话密钥解密出对应数据.

只要这5步中有一步校验异常,都会重新握手.


End

坚持原创技术分享,您的支持将鼓励我继续创作!