作者:来人把老师拖出I去毙了 | 来源:互联网 | 2023-05-19 11:15
我有私钥(my_ca.key)和公钥(my_cert.crt),由DigiCert签名.现在我想生成SSL证书(版本3)并通过我的私钥对其进行签名.这是我尝试这样做的方式.但是当我导出到钥匙串(Mac OS X)时.我一直得到这样的错误" 这个证书有一个无效的发行人钥匙串 ".不知道如何解决这个问题.这里my_cert.crt从DigiCert High Assurance CA-3扩展而来自DigiCert High Assurance EV Root CA.还将DigiCert High Assurance CA-3,DigiCert High Assurance EV Root CA添加到钥匙串中.它显示my_cert.crt有效.如何得到这种错误.
######### Initialization
SSL_SUBJ="/C=LK/ST=Colombo/L=Colombo/O=wso2/OU=laptop/CN=mdm.go.com"
########SSL Certificate
echo "\nGenerating SSL Certificate >>>>>> START"
openssl genrsa -out ia.key 4096
openssl req -new -key ia.key -out ia.csr -subj "$SSL_SUBJ"
openssl x509 -req -days 365 -in ia.csr -CA my_cert.pem -CAkey my_ca.pem -set_serial 765644787 -out ia.crt -extensions v3_ca -extfile ./openssl.cnf
echo "\nGenerating SSL Certificate >>>>>> END \n"
openssl pkcs12 -export -out ia.p12 -inkey ia.key -in ia.crt -CAfile my_cert.pem -name sslcert -passout pass:password
注意:在/ etc/hosts中添加自定义条目,将IP地址映射到SSL证书CN,并将测试服务器和客户端放在同一台机器上.
1> 小智..:
下载
https://developer.apple.com/certificationauthority/AppleWWDRCA.cer
并双击以安装到Keychain.
在Keychain应用程序中选择"查看" - >"显示过期的证书".
确认已选中"证书"类别.
从"登录"选项卡和"系统"选项卡中删除过期的Apple全球开发者关系证书颁发机构证书.
这是Apple的答案.
感谢您引起社区的关注并为您遇到的问题道歉.此问题源于在系统和登录密钥链中都有过期的WWDR中间证书副本.要解决此问题,您应该首先下载并(在文件上双击)安装新WWDR中间证书.接下来,在Keychain Access应用程序中,选择System keychain.确保在"查看"菜单中选择"显示过期的证书",然后删除Apple全球开发者关系证书颁发机构中级证书的过期版本(已于2016年2月14日到期).您的证书现在应该在Keychain Access中显示为有效,并且可供Xcode用于提交到App Store.
您还可以访问https://forums.developer.apple.com/thread/37208
有关更多详细信息,请参阅https://developer.apple.com/support/certificates/expiration/
这是正确答案 - 请仔细阅读以上步骤.
2> 小智..:
我有一个解决这个问题的简单方法.
在钥匙串中选择证书,然后右键单击它.在那里,您将看到选项"GetInfo"单击它并选择"信任"选项.选择使用此证书时"始终信任"的选项.这就是全部 - 此证书将被标记为您的帐户信任.