gpt4 book ai didi

java - SSL 链验证因中间证书而失败

转载 作者:行者123 更新时间:2023-11-30 04:16:32 25 4
gpt4 key购买 nike

我想了解验证链的工作方式。我的信任库中真正需要哪些证书?

我有一条链子根 CA -> 中间 1 -> 中间 2 -> 服务器证书。我的信任库中只有中间 2 证书。在我的一台测试机器上,这可以正常工作,但在我的另一台测试机器上却不能(联系具有类似配置的不同服务器)。我收到这个流行的 SunCertPathBuilderException:无法找到请求目标的有效证书路径异常。服务器发送完整的链。我想解决方案是将整个链放到根 CA 到我的信任库。

我想知道为什么它在一台机器上工作而在另一台机器上不起作用。是否有可能影响链验证的工作方式?服务器可以要求全链验证吗?

我不知道是否自动包含 jdk 的默认信任库。两台机器的jdk版本略有不同1.7.0_21(不工作)和1.7.0_25(工作)。这有关系吗?

还有一件事:这个 SunCertPathBuilderException - 是否可以找出他不喜欢链的哪一部分?

我很高兴收到任何提示。谢谢,海克

最佳答案

您只需要证书链中任何签名者的证书。通常是最上面的一个。

我会仔细查看从 -Djavax.net.debug=ssl,handshake 中可见的链本身以及本地信任库文件,以确保至少有一个证书位于链具有与调试日志中相同的签名、日期、subjectDN、issuerDN 等。

关于java - SSL 链验证因中间证书而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18205733/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com