java - 找不到受信任的证书

标签 java ssl-certificate certificate-authority

问题:

我从 javax.net.ssl.SSLHandshakeException 中收到抛出的错误(参见附图)

alt text

Java 的 CA 证书是否可能损坏或丢失?如果是这样,我该如何修复或解决此问题/错误?

我尝试过的事情:

  1. 我已从 PC 上删除了所有版本的 JRE,并安装了最新版本的 JRE (1.6.14)。
  2. 从证书的用户部分清理并删除了所有不必要的受信任证书。
  3. 尝试运行 keytool 来获取 CA 的指纹

当尝试运行 keytool 时,我得到以下信息:

keytool错误:java.security.cert.CertificateParsingException:java.io.IOException:主题 key ,java.security.spec.InvalidKeySpecException:未知 key 规范。

最佳答案

Java 的 CA 证书被破坏,这在理论上是可能的,但在我看来极不可能。您想要的 CA 证书很可能不在 JRE 的 cacerts 存储中。您可以使用“keytool”检查商店的内容(至少在 Linux 上);例如

keytool -list -keystore /usr/java/jdk1.6.0_14/jre/lib/security/cacerts

扫描该列表,看看是否可以看到您的 URL 所需的 CAcert 的指纹。

引用:JDK 6.0 JDK Development Tools / Security Tools页面/部分。

关于java - 找不到受信任的证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1202535/

相关文章:

openssl - 生成具有 2 个 OU 名称的 CSR

php - 安全地更新证书颁发机构证书

java - AssertJ 将提取的字段转换为 Map

Java时钟分配

php - Composer Require 'package' 抛出 OpenSSL 错误

amazon-web-services - 我可以为主域和子域设置两个不同的 SSL 证书吗?

ssl - 哪个根 CA 仍然颁发 SHA-1 ssl 证书?

java - 同步集合中的 ConcurrentModificationException

java - 为什么 Quick-Union Weighted 中的索引在与更大的树合并时保持大小 1?

PHP 使用 LetsEncrypt 验证失败