【问题标题】:2 way SSL/TLS configuration2 路 SSL/TLS 配置
【发布时间】:2016-12-01 14:32:39
【问题描述】:

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

【问题讨论】:

    标签: ssl weblogic tls1.2 mutual-authentication


    【解决方案1】:

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

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

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

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

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

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

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

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

    【讨论】:

    • 谢谢 steffen,我明白我误解了证书的处理方式。如果服务器向客户端发送证书 [服务器和中间] 作为握手的一部分,为什么我需要第三方发送给我的证书?这些是否需要进入信任商店才能建立信任?如果是这样,如果它们是通过握手发送的,为什么我需要存储它们?感谢您的帮助。
    • @BartStough:服务器将证书和与服务器证书匹配的链发送给客户端。客户端将其证书和与客户端证书匹配的链发送到服务器。这些可以是不同的链。
    猜你喜欢
    • 2019-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-08
    • 2020-10-05
    • 1970-01-01
    相关资源
    最近更新 更多