我们可以将多个证书密钥对附加到单个TLS客户端吗?例如:-
客户端-A是否有从CA-1签署的证书-1和由CA-2签署的证书-2等等?假设每个证书都有自己的私钥对。
因此,当Client-A根据服务器中预先安装的CA证书向TLS发送N个证书-密钥对时,将导致客户端证书-1的成功验证和证书-2的验证失败(服务器没有CA-2证书)。如果上述情况是可能的,结果将是什么?TLS握手是成功的还是失败的?
另外,是否有人可以分享一个示例,说明如何使用openssl命令或编程(例如在C程序中)附加多个证书-密钥对。
发布于 2022-01-09 16:59:28
客户端不能向服务器发送多个叶证书,服务器将选择它喜欢的一个。相反,客户端将发送一个单张证书,包括必要的证书链,它将提供一个CertificateVerify消息,该消息由这个单叶证书签名,作为匹配私钥所有权的证明。
这意味着客户端需要决定发送哪一个证书。服务器可以发送一个可接受的CA列表来指导客户端,但即使这样,也可能存在多个证书。在这种情况下,客户端需要以某种方式决定发送哪一个,例如通过询问用户。
https://stackoverflow.com/questions/70643482
复制相似问题