【问题标题】:How to add .p12 key to Java Spring from .pem file?如何从 .pem 文件将 .p12 密钥添加到 Java Spring?
【发布时间】:2020-08-19 18:59:51
【问题描述】:

我有这 3 个文件:

  • certificate.crt
  • certificate.pem
  • certificate.key

certificate.crt 包含:

-----BEGIN CERTIFICATE-----
MIIGmzCCBYOgAwIBAg etc
-----END CERTIFICATE-----

certificate.key 包含:

-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCA bla bla
-----END RSA PRIVATE KEY-----

而且 certificate.pem 更复杂,它有:

-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgk etc etc
-----END PRIVATE KEY-----
-----BEGIN CERTIFICATE-----
MIIGmzCCBYOgAwIBAg etc
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIGBjCCA+6gAwIBAgIR...
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIFdzCCBF+gAwIBAgIQ...
-----END CERTIFICATE-----

所以,certificate.pem 包含 1 个私钥(与 certificate.key 不同)和 3 个证书(第一个与 certificate.crt 相同)

使用这些文件,我怎样才能获得一个 .p12 文件以插入到我的 Java Spring 应用程序中?

我已经尝试使用 openssl 将 .pem 文件转换为 .p12 文件,但是当我转到 https//mydomain.com 时,出现了一条不安全的 ssl 消息。

【问题讨论】:

  • 欢迎来到 Stackoverflow。由于您缩短了密钥/证书(对于真正的密钥来说可以),我无法测试,但我会尝试将此命令与 openssl 一起使用:“openssl pkcs12 -export -in certificate.pem -out clientcertchain.p12”=> 应该生成一个p12 文件“clientcertchain.p12”。

标签: java spring ssl pem p12


【解决方案1】:

我知道为时已晚,但以防万一,将来有人会需要它。

sudo openssl pkcs12 -export -in certificate.crt -inkey certificate.key -out keystore.p12

请注意,在大多数情况下,证书文件受到保护,并且仅允许 root / sudo 用户进行读取操作。验证做-> ls -al.

-rw----r-- 1 root root 5717 Jun 13 21:49 certificate.crt 使用 root / sudo 权限执行操作或使用 chmod/chown 更改权限。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-06-30
    • 1970-01-01
    • 1970-01-01
    • 2017-07-20
    • 1970-01-01
    • 2016-08-15
    • 2021-03-05
    相关资源
    最近更新 更多