【问题标题】:keytool error: java.lang.Exception: Certificate reply and certificate in keystore are identicalkeytool 错误:java.lang.Exception:密钥库中的证书回复和证书相同
【发布时间】:2019-01-11 06:15:39
【问题描述】:

我想用证书签署我的 jar 文件。我已按照以下步骤操作。 C:\Program Files\Java\jdk-10.0.2\bin>keytool -genkey -alias testals -keystore testks

C:\Program Files\Java\jdk-10.0.2\bin>keytool -export -keystore testks -alias testals -file testcer.cer

证书存储在文件中

C:\Program Files\Java\jdk-10.0.2\bin>keytool -import -alias testals -file testcer.cer -keystore testks

但是在导入获取异常时,作为证书回复和密钥库中的证书是相同的。

请帮助我怎么做?

【问题讨论】:

  • 证书已存储在密钥库中 - 为什么要再次导入? (导出:将证书复制到文件;导入:从文件中读取证书到密钥库)
  • @sai 你解决了吗?我有同样的错误,虽然你似乎打错了你的句子。

标签: java ssl keytool


【解决方案1】:

导入时使用不同的别名,不要使用导出时使用的别名。它会起作用的。

这是因为您正在为根导入自签名证书,而不是服务器证书。

【讨论】:

    【解决方案2】:

    以下是从您的命令中观察到的相同内容,因此是错误。

    密钥库名称:testks 别名:睾丸 文件:testcer.cer

    如果您需要为您的 jar 签名,请按照以下步骤操作。

    1. 从您的密钥库生成证书签名请求。相同的示例命令如下所示。

    keytool -certreq -file testks.csr -keystore testks -alias testals -ext SAN=dns:testals

    1. 提供您的 IT 网络安全团队生成的 CSR,并要求他们提供签名证书

    2. 像之前一样导入证书回复,但使用已签名的证书,您将不会再看到此错误。

    让我们知道这是否有效。

    【讨论】:

      猜你喜欢
      • 2014-11-16
      • 2014-03-01
      • 1970-01-01
      • 2013-01-31
      • 1970-01-01
      • 2014-08-16
      • 2023-03-21
      • 1970-01-01
      • 2017-02-05
      相关资源
      最近更新 更多