我正在使用iOS 6
我正在尝试使用我创建的自签名证书运行Web服务,并使用iOS 6设备成功使用它。
我正在使用SHA256来生成和签署证书。我在互联网上读到iOS 6设备拒绝使用MD5创建的证书
我在这里制作了rootCA:
% openssl genrsa -des3 -out private/rootCA.key 2048
然后我签了名:
% openssl req -x509 -sha256 -new -nodes -key private/rootCA.key -days 1024 -out rootCA.pem
然后我将其转换为p12格式,以便我可以放入我的iOS 6设备:
% openssl pkcs12 -export -in rootCA.pem -inkey private/rootCA.key -out rootCA.p12
然后在Macosx中,我使用Keychain Access将rootCA.p12添加到我的钥匙串中。
然后我为我的服务器制作了证书:
% openssl genrsa -out mydemo.com.key 2048
然后我发出了签名请求
% openssl req -sha256 -new -key mydemo.com.key -out mydemo.com.csr
然后我签了名:
% openssl x509 -sha256 -req -in mydemo.com.csr -CA rootCA.pem -CAkey private/rootCA.key -CAcreateserial -out mydemo.com.crt -days 500
然后我在nginx中使用了mydemo.com.crt。
Macosx Chrome和Safari认为该证书有效。
我将rootCA.p12添加到了我的iOS设备。我可以在个人档案中看到它。
iOS 6设备上的安全框架拒绝该证书。
我该怎么办?