使用客户端证书和自签名证书的私钥生成PKCS12

时间:2019-01-06 11:21:01

标签: openssl ssl-certificate client-certificates self-signed pkcs#12

我想使用2种方式的SSL身份验证整合第三方API。我有第三方提供的公共证书。但是我在创建调用API所需的PKCS12文件时遇到问题。以下是创建自签名证书和私钥并将其与提供的公共证书一起使用以创建PKCS12文件的过程,

创建请求和私钥
openssl req -new -newkey rsa:2048 -nodes -keyout privatekey.key -out certificatereq.cer

使用请求和密钥创建证书
openssl x509 -req -days 365 -in certificatereq.cer -signkey privatekey.key -out selfsigned.crt

创建证书后,我通过以下命令使用它创建了PKCS12文件
openssl pkcs12 -export -in selfsigned.crt -inkey privatekey.key -out outpkcs12file.p12 -name myname -CAfile thirdpartypublic.crt -caname mycaname -chain

但是在运行上述命令以创建PKCS12文件时,出现错误错误自签名证书获取链。我是SSL和双向身份验证的新手,不确定是否正确使用openssl命令。在这方面的任何帮助都将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

将私钥和SSL证书复制到纯文本文件。私钥应位于下面的SSL证书的最上方(您必须保持顺序)。

运行以下openssl命令:

openssl pkcs12 -export -in <Your_filename>.txt -out <Your_filename>.p12

此后将提示您输入密码。输入密码并在下一个提示中进行验证。如果未指定任何位置,新的PKCS12文件将位于执行OpenSSL命令的目录中。

以供参考:https://knowledge.digicert.com/solution/SO25984.html