【发布时间】:2011-11-01 08:03:55
【问题描述】:
我有一个 .pk8 文件,我想将其转换为 .key 文件格式,以便我可以将它们移动到 pkcs12 存储,然后使用 keytool 移动到 java 密钥存储。
请提出可能的解决方案??
【问题讨论】:
我有一个 .pk8 文件,我想将其转换为 .key 文件格式,以便我可以将它们移动到 pkcs12 存储,然后使用 keytool 移动到 java 密钥存储。
请提出可能的解决方案??
【问题讨论】:
首先使用 OpenSSL 命令行工具将您的 PKCS#8 文件转换为普通私钥:
openssl pkcs8 -in file.pk8 -out key.pem
如果这给你一个错误,可能是因为密钥是 DER 格式,那么试试这个:
openssl pkcs8 -in file.pk8 -inform DER -out key.pem
收集您希望在 PKCS#12 密钥存储中的证书并确保它们是 PEM 编码的(在文本编辑器中打开它们 - 如果文件以 '----- BEGIN X.509 CERTIFICATE - ----' 或类似的,那么你已经可以开始了):
openssl x509 -in single_cert.cer -inform DER -out single_cert.pem
打开文本编辑器并粘贴所有 PEM 编码的证书加上 key.pem 的内容到该文件中,一个接一个地得到一个像这样的文件:
----- BEGIN RSA PRIVATEKEY ----- '' or another format, depends on your key
...contents of your key file
----- END RSA PRIVATEKEY -----
----- BEGIN X.509 CERTIFICATE -----
...contents of certificate 1
----- END X.509 CERTIFICATE -----
----- BEGIN X.509 CERTIFICATE -----
...contents of certificate 2
----- END X.509 CERTIFICATE -----
...
保存这个,例如作为所有.pem。要最终创建您的 PKCS#12 密钥库,请发出以下命令:
openssl pkcs12 -export -in all.pem -out file.p12 -name "somename"
提供密码并完成。 name 参数将成为您在 Java 世界中的“别名”。
【讨论】:
-nocrypt 参数。
openssl pkcs8 -in file.pk8 -nocrypt -out key.pem 或openssl pkcs8 -in file.pk8 -inform DER -nocrypt -out key.pem?
关注this guide 为我工作。具体使用keytool-iui导入私钥。
【讨论】: