2

我正在使用 iOS 6

我正在尝试使用我创建的自签名证书运行 Web 服务,并让 iOS 6 设备成功使用它。

我正在使用 SHA256 生成和签署证书。我在 Internet 上读到 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 设备上的安全框架拒绝该证书。

我该怎么办?

4

0 回答 0