GPr*_*hap 7 ssl openssl keychain pkcs#12 x509certificate
我有私钥(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
Run Code Online (Sandbox Code Playgroud)
注意:在/ etc/hosts中添加自定义条目,将IP地址映射到SSL证书CN,并将测试服务器和客户端放在同一台机器上.
Mah*_*esh 30
这是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/
小智 13
我有一个解决这个问题的简单方法.
在钥匙串中选择证书,然后右键单击它.在那里,您将看到选项"GetInfo"单击它并选择"信任"选项.选择使用此证书时"始终信任"的选项.这就是全部 - 此证书将被标记为您的帐户信任.
小智 0
通常,证书链中除最后一个之外的所有 X.509 证书都是 CA 证书。链中的第一个证书称为根 CA(在您的情况下为 DigiCert 高保证 EV 根 CA),然后颁发者链中的其他 CA 证书(如果有)是中间 CA,最后一个是最终实体(不是 CA)。我认为您不能颁发非 CA 证书颁发的新 SSL 证书。因此,您可以使用由 DigiCert 签名的 my_cert.crt 作为 SSL 证书,但不能使用 my_ca.key 颁发自己的证书。
| 归档时间: |
|
| 查看次数: |
15796 次 |
| 最近记录: |