0

如果我在仅服务器身份验证中正确理解 SSL/TLS,则在握手后,服务器向客户端发送它的公钥和由 CA 签名的数字签名证书。如果客户端拥有这个 CA 的公钥,它可以解密证书并与服务器建立信任。如果它不信任 CA,则通信停止。在客户端需要向服务器进行身份验证的 2 路 SSL 中,在客户端收到公钥和数字签名证书后,客户端将通过其公钥和数字签名证书向服务器发送。服务器将检查它是否有客户端证书的公钥,如果有,它可以与客户端建立信任。我正在 weblogic 服务器上设置相互身份验证 [2 路 ssl] [在这种情况下是客户端,呼叫出站到网络服务],第三方向我发送了一个数字签名的证书和一个证书链。为什么我需要这些。这不是握手后服务器回复的吗?

4

1 回答 1

0

服务器向客户端发送它的公钥和由 CA 签名的数字签名证书。

证书包含公钥。密钥不会额外发送。

如果客户端有这个 CA 的公钥,它可以解密证书

证书未加密,由 CA 签名。因此,不进行解密,但如果客户端拥有 CA 的证书(以及其公钥),则客户端可以验证此签名。但通常证书不是由浏览器信任的 CA 直接签名的,而是有中间证书。在这种情况下,服务器不仅会发送服务器证书,还会发送构建信任链所需的所有中间证书。

然后客户端将通过其公钥和数字签名证书向服务器发送。

同样,公钥是证书的一部分。

第三方向我发送了数字签名证书和证书链。为什么我需要这些。

第一个证书是客户端证书。建立信任链需要链证书,因为服务器不直接信任客户端证书的颁发者 CA,因此需要中间证书。

于 2016-07-27T17:18:43.740 回答