我有一个.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 -----
...
将此保存为all.pem。要最终创建PKCS#12密钥库,请执行此命令:
openssl pkcs12 -export -in all.pem -out file.p12 -name "somename"
提供一个密码即可完成。 name
参数将成为您在Java世界中的“别名”。
openssl pkcs8 -in file.pk8 -nocrypt -out key.pem
或者openssl pkcs8 -in file.pk8 -inform DER -nocrypt -out key.pem
命令?这将输出一个 key.pem 文件。 - emboss