DeTechn Blog

https 的加密过程?

单向认证(客户端无证书):

  1. 客户端:发送客户端SSL版本信息
  2. 服务器:服务端给客户端返回SSL版本、随机数等信息,以及服务器公钥
  3. 客户端:客户端校验服务端证书是否合法,合法继续,否则告警
  4. 客户端:客户端改善自己可支持的对称加密方案给服务端,供其选择
  5. 服务端:服务端选择加密程序高的加密方式
  6. 服务端:将选择好的加密方式以明文方式发送给客户端
  7. 客户端:收到加密方式后,产生随机码,作为对称加密密钥,使用服务端公钥进行加密后,发送给服务端
  8. 服务端:服务端使用私钥对加密信息进行解密,获得对称加密的密钥
  9. 数据信道:形成对称加密通道,确保通信安全

    双向认证(客户端有证书):

  10. 客户端:发送客户端SSL版本信息
  11. 服务器:服务端给客户端返回SSL版本、随机数等信息,以及服务器公钥
  12. 客户端:客户端校验服务端证书是否合法,合法继续,否则告警
  13. 客户端:客户端校验通过后,将自己的证书及公钥发送至服务器端
  14. 服务端:对客户端证书进行校验,校验结束后获得客户公钥
  15. 客户端:客户端改善自己可支持的对称加密方案给服务端,供其选择
  16. 服务端:服务端选择加密程序高的加密方式
  17. 服务端:将选择好的加密方案[使用客户端公钥进行加密]后发送给客户端
  18. 客户端:收到加密方式后,使用私钥进行解密,产生随机码,作为对称加密密钥,使用服务端公钥进行加密后,发送给服务端
  19. 服务端:服务端使用私钥对加密信息进行解密,获得对称加密的密钥
  20. 数据信道:形成对称加密通道,确保通信安全

当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »