security - 需要帮助将 P12 证书转换为 JKS

标签 security ssl openssl pkcs#12 jks

我需要一些帮助将我的 .P12 证书文件转换为 JKS keystore 。我遵循了使用 Java 的 keytool 实用程序的标准命令。但是,当我尝试使用生成的 JKS 文件通过 SOAPUI 访问 WS 端点时,出现 403.7 错误 - 禁止访问:需要 SSL 证书。针对同一端点将 P12 文件与 SOAPUI 结合使用会产生成功的响应。 这是将 P12 keystore 导入 JKS keystore 的标准命令 -

keytool -importkeystore -srckeystore src.p12 -srcstoretype PKCS12 -deststoretype JKS -destkeystore target.jks

我还尝试使用 openssl 转换 P12 -> PEM -> DER -> JKS:

openssl pkcs12 -in src.p12 -out src.pem -clcerts

(将 src.pem 编辑成它的两个复合部分,称为 src.key 和 src.cer)

openssl pkcs8 -topk8 -nocrypt -in src.key -out key.der -inform PEM -outform DER
openssl x509 -in src.cer -inform PEM -out cert.der -outform DER

(我运行了一个实用程序将两个 key 组合成 keystore.ImportKey )

keytool -importkeystore -srckeystore keystore.ImportKey -destkeystore target.JKS

同样没有骰子。

有什么我想念的吗?

最佳答案

如果您有 Keytool 应用程序和 PKCS#12 文件,请启动单行命令:

keytool -importkeystore -srckeystore [MY_FILE.p12] -srcstoretype pkcs12
 -srcalias [ALIAS_SRC] -destkeystore [MY_KEYSTORE.jks]
 -deststoretype jks -deststorepass [PASSWORD_JKS] -destalias [ALIAS_DEST]

您需要修改这些参数:

  • MY_FILE.p12:指示要转换的 PKCS#12 文件(.p12 或 .pfx 扩展名)的路径。
  • MY_KEYSTORE.jks:您要在其中存储证书的 keystore 的路径。如果不存在,将自动创建。
  • PASSWORD_JKS:将在 keystore 打开时请求的密码。
  • ALIAS_SRC:与您在 PKCS#12 文件中的证书条目匹配的名称,例如“tomcat”。

如果您要从生成 .PFX 文件的 Windows 服务器导出证书,则必须检索 Windows 创建的“别名”名称。为此,您可以执行以下命令:

keytool -v -list -storetype pkcs12 -keystore FILE_PFX

“别名”字段表示您需要在命令行中使用的证书的存储名称。

  • ALIAS_DEST:与您在 JKS keystore 中的证书条目匹配的名称,例如“tomcat”。

关于security - 需要帮助将 P12 证书转换为 JKS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16244182/

相关文章:

macos - 无法在我的 Mac Mountain Lion 上运行 Composer - openssl 扩展

c - 是否有 strcpy_s 和/或 TR24731-1 的免费实现?

security - 代码签名 : When & Why?

security - 在家中良好的安全备份开发人员

security - 对 Alias 功能区菜单的可见性的 sitecore 权限

ssl 证书未更新

c# - TLS 之上的 p2p 协议(protocol),同步中间证书

java - Tomcat 客户端证书验证

docker - 带有OpenSSL和stdin,stdout的Docker Exec

ssl - 在我的本地浏览器中仅针对多个域忽略一次通配符自签名证书警告