我需要将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
感谢您的帮助!
最好的问候 马丁
答案 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