iOS6を使用しています
作成した自己署名証明書を使用して 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
次に、iOS 6 デバイスに挿入できるように、p12 形式に変換します。
% openssl pkcs12 -export -in rootCA.pem -inkey private/rootCA.key -out rootCA.p12
次に、Macosx で、キーチェーン アクセスを使用して 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 は、証明書が有効であると認識していました。
iOS デバイスに rootCA.p12 を追加しました。プロフィールで見ることができます。
iOS 6 デバイスのセキュリティ フレームワークが証明書を拒否します。
私は何をしますか?