将.pk8文件转换为.key文件

时间:2011-08-22 17:16:35

标签: android openssl

我有一个.pk8文件,我想将其转换为.key文件格式,以便我可以将它们移动到pkcs12存储中,然后再使用keytool移动到java密钥库。

请建议可能的解决方案??

2 个答案:

答案 0 :(得分:3)

使用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编码的证书 plus 粘贴到该文件中的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 -----
...

保存此内容,例如as all.pem。要最终创建PKCS#12密钥库,请发出以下命令:

openssl pkcs12 -export -in all.pem -out file.p12 -name "somename"

提供密码并完成。 name参数将成为Java世界中的“别名”。

答案 1 :(得分:1)

以下this guide为我工作。特别是使用keytool-iui导入私钥。