ssl通信握手问题

ssl通信握手问题

在 SSL 通信期间,服务器将其证书发送给客户端进行身份验证。
客户端也可以选择发送其证书,以进行客户端身份验证。
我的问题是,服务器(或客户端)是将整个证书链发送给客户端(即签名证书),还是仅发送其自己的证书?
我注意到通常只发送其自己的证书,但我想知道它是否可以配置,或者将整个证书链发送给另一方是否没有意义。

谢谢

答案1

它是可配置的。

任何对方已知的证书都不需要发送(但需要注意的是,certificate_list 证书中的每个证书都必须直接证明其前面的证书,除了第一个没有前面证书的证书)

发送根证书是没有意义的,因为假设对方必须已经拥有根证书才能在任何情况下验证它。至于中间证书,这取决于您的特定证书链。

答案2

回答关于客户端的部分,当服务器请求客户端证书时,它会发送它识别的 CA 列表。客户端只需将其证书链发送给其中一个已识别的 CA。

相关内容