将RSA私钥/公钥转换为.p12

时间:2020-11-07 15:09:54

标签: security openssl rsa p12

我需要将RSA密钥对转换为.p12,但我无法做到。我已经尝试过使用openssl尝试其他方法,但是仍然失败。

我有以下

-----BEGIN PUBLIC KEY-----
...
-----END PUBLIC KEY-----


-----BEGIN RSA PRIVATE KEY-----
....
-----END RSA PRIVATE KEY-----

似乎我缺少基本知识... 我从服务提供商那里获得的唯一东西是RSA公钥和私钥。 targetlandscape仅支持.p12。

我尝试过

openssl pkcs12 -export -out DocusignPrivate.p12 -inkey DocusignPrivate.pem -in DocusignPublic.pem 

感谢您的帮助!

最好的问候 马丁

1 个答案:

答案 0 :(得分:1)

这不是编程或开发问题,可能会被投票否定主题,因为近年来随着其他许多Stacks的存在,SO变得更加严格。

PKCS12无法存储裸公开密钥; (而不是)它存储X.509 证书,其中包含公钥。如果您没有由CA颁发的“真实”证书,通常的做法是创建虚拟(自签名)证书。有多种方法可以做到这一点,包括使用OpenSSL的几种方法,可能还有数百种现有的Q和As,但是最简单的方法是

openssl req -new -x509 -key $privkey -days 365 -subj "/CN=somename" -out $cert
# adjust days if desired; depending on the software that will use this p12 
# and your version of openssl, may need to specify signing hash e.g. -sha256
#
# then use openssl pkcs12 -export -inkey $privkey -in $cert -out $p12