我有一个.pk8文件,我想将其转换为.key文件格式,以便我可以将它们移动到pkcs12存储中,然后再使用keytool移动到java密钥库。
请建议可能的解决方案??
答案 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导入私钥。