我有私钥(my_ca.key)和公钥(my_cert.crt),由DigiCert签名。现在我想创建RA(注册机构)并通过我的私钥对其进行签名。这是我尝试这样做的方式。但是当我尝试将私钥和公钥导出为pkcs12文件时,我收到的错误是无法获得本地颁发者证书链。不知道如何解决这个问题。这里my_cert.crt从 DigiCert High Assurance CA-3 扩展而来,扩展自 DigiCert High Assurance EV Root CA
SSL_SUBJ="/C=LK/ST=Colombo/L=Colombo/O=Nope/OU=mobile/CN=My root"
openssl genrsa -out ra.key 4096
openssl req -new -key ra.key -out ra.csr -subj "$SSL_SUBJ"
openssl x509 -req -days 365 -in ra.csr -CA my_cert.pem -CAkey my_ca.pem - set_serial 76964474 -out ra.crt
openssl rsa -in ra.key -text > ra_private.pem
openssl x509 -in ra.crt -out ra_cert.pem
openssl pkcs12 -export -out ca.p12 -inkey my_ca.pem -in my_cert.pem -name "cacert" -passout pass:password
openssl pkcs12 -export -out ra.p12 -inkey ra_private.pem -in ra_cert.pem - chain -CAfile my_cert.pem -name "racert" -passout pass:password
答案 0 :(得分:6)
您通常无法使用公共CA颁发的证书来签署除客户端或服务器流量之外的任何内容;你无法将它用于你的RA。
错误消息表明中间证书存在问题。确保将两个Digicert证书添加到my_cert.pem文件中,然后再将其导出到pkcs12