【问题标题】:Import PKCS7 (Chained Certificate) using KeyTool command to JKS使用 KeyTool 命令将 PKCS7(链式证书)导入 JKS
【发布时间】:2013-03-26 17:25:10
【问题描述】:

我有一个 CA 颁发的 PKCS#7 格式的 CERT。它里面有证书(链式)。 Keytool 无法识别 PKCS7 格式。我曾尝试使用 OpenSSL 工具将 PKCS7 格式证书转换为 PEM 格式,但它失败了。我收到一条错误消息“无法加载 PKCS7 对象”。

如何将 PKCS7 证书链导入我的 JKS?

【问题讨论】:

    标签: certificate keytool pkcs#7 jks


    【解决方案1】:

    您可以在 keytool reference 中看到 -importcert 命令:

    从文件 cert_file 中读取证书或证书链(后者以 PKCS#7 格式的回复提供),并将其存储在由别名标识的密钥库条目中。如果没有给出文件,则从标准输入读取证书或 PKCS#7 回复。

    keytool 可以导入 X.509 v1、v2 和 v3 证书,以及由该类型证书组成的 PKCS#7 格式的证书链。

    尝试按原样导入 PKCS7 证书。

    虽然,它并不总是有效。如果您遇到问题,请尝试执行以下操作(使用 OpenSSL):

    1. 将它包含的所有证书打印到 PEM 文件中

      OpenSSL> pkcs7 -in initial_file.p7b -inform DER -print_certs -outform PEM -out certs_chain.pem

    2. 使用编辑器打开新的 PEM 文件 (certs_chain.pem) 并删除 -----BEGIN CERTIFICATE----------END CERTIFICATE----- 边界之外的所有内容(仅保留边界内的编码内容,证书本身)和保存它。

    现在 keytool 导入证书应该没有问题,使用 certs_chain.pem 作为 cert_file

    【讨论】:

    • 如果你在 Windows 上?
    • 尽管我有 -inform PEM 和 -outform PEM,但它对我很有用,因为 keytool 无法读取原始 PEM。在 Windows 上,我安装了商店中提供的 Bash(来自 Ubuntu)。
    【解决方案2】:

    另一种方法是使用 IE 创建 X.509 证书。您可以在我关于在 WLS 和 IIS 之间执行 SSL 的文章中找到步骤http://techblog.fywservices.com/2012/10/establishing-weblogic-server-https-trust-of-iis-using-a-microsoft-local-certificate-authority/

    【讨论】:

      猜你喜欢
      • 2018-01-13
      • 2013-03-28
      • 2014-03-01
      • 2014-06-05
      • 1970-01-01
      • 2018-06-20
      • 2018-04-18
      • 2023-03-24
      • 1970-01-01
      相关资源
      最近更新 更多