我正在尝试从OpenSSL创建的一些现有.der文件创建P12证书。
当我尝试运行以下命令时,出现错误。
C:Windowssystem32>openssl pkcs12 -export -out bundle.p12 -inkey <PATH>/PrivKey.der -in <PATH>/ClientSignedCert.der -certfile <PATH>/CACert.der
我收到的错误:
Loading 'screen' into random state - done
unable to load private key
5688:error:0906D06C:PEM routines:PEM_read_bio:no start line:.cryptopempem_lib
.c:696:Expecting: ANY PRIVATE KEY
我不明白这一点。 我给OpenSSL一个私钥(PrivKey.der)。此错误的原因可能是什么?
OpenSSL 1.0.12012年3月14日 (图书馆: OpenSSL 1.0.1c 2012年5月10日)
Windows 7 Professional。
根据 openssl PKCS12 文档,您的 -in
、-inkey
和 certfile 文件必须采用 PEM 格式。
要将证书从 DER 转换为 PEM,请执行以下操作:
x509 –in ClientSignedCert.der –inform DER –out ClientSignedCert.crt –outform PEM
x509 –in CACert.der –inform DER –out CACert.crt –outform PEM
要将密钥从 DER 转换为 PEM,请执行以下操作:
rsa –in PrivKey.der –inform DER –out PrivKey.key –outform PEM
Openssl PKCS12 文档