Nginx开启TLS双向认证流程及配置

1. 认证流程

双向认证流程图
双向认证流程说明:

  1. 客户端发起连接
    客户端首先向服务器发送ClientHello消息,其中包含以下信息:
    • 支持的协议版本和加密套件列表
    • 客户端随机数
  2. 服务器响应
    服务器响应客户端的ClientHello消息,并发送ServerHello消息,其中包含以下信息:
    • 服务器选择的协议版本和加密套件
    • 服务器随机数
    • 服务器证书链
  3. 客户端验证服务器证书
    客户端验证服务器证书链的有效性,包括检查证书是否由受信任的CA签发、证书是否有效以及证书中的主机名是否与服务器的主机名匹配。
  4. 客户端发送客户端证书(如果需要)
    如果服务器要求客户端进行身份验证,客户端会将自己的证书和客户端KeyProof消息发送给服务器。客户端KeyProof消息包含客户端使用服务器公钥加密的预主密钥。
  5. 服务器验证客户端证书(如果需要)
    服务器验证客户端证书的有效性,类似于客户端验证服务器证书的过程。服务器还会使用客户端公钥解密客户端KeyProof消息中的预主密钥。
  6. 双方计算共享会话密钥
    客户端和服务器使用各自的预主密钥、客户端随机数和服务器随机数来计算共享的会话密钥。
  7. 客户端发送ChangeCipherSpec消息
    客户端向服务器发送ChangeCipherSpec消息,指示服务器开始使用共享会话密钥加密通信。
  8. 服务器发送ChangeCipherSpec消息
    服务器向客户端发送ChangeCipherSpec消息,指示客户端开始使
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值