我想使用两个 PEM 文件对服务器进行 HTTPS POST,其中包含我的私钥和证书,以及服务器的 CACertificate。我已经在 Windows 应用程序中这样做了一段时间,而且效果很好。现在我必须在 iPad 上的 iOS 应用程序中做同样的事情。似乎 Cocoa 框架没有针对此类请求的功能......任何关于如何执行此操作或如何在 iOS 设备上引入 cURL 的想法将不胜感激。
更新:我最终使用了为 iOS 5.1 编译的带有 openSSL 的 cURL。完美运行。
也许ASIHTTPRequest可以帮助
客户端证书方法
If your server requires the use of client certificates, as of v1.8 it
is now possible to send them with your request.
// Will send the certificate attached to the identity (identity is a SecIdentityRef)
[request setClientCertificateIdentity:identity];
// Add an additional certificate (where cert is a SecCertificateRef)
[request setClientCertificates:[NSArray arrayWithObject:(id)cert]];
There is a helper function in ClientCertificateTests.m in the iPhone /
iPad sample app that can create a SecIdentityRef from PKCS12 data
(this function only works on iOS).