iPhone应用程序和Web服务器之间的安全连接?

4
我即将开始开发一个iPhone应用程序,该应用程序应该能够安全地登录并在应用程序和Web服务器之间传递信息。
我以前在这个领域没有做过多少开发工作,因此我做了一些研究,并非常感谢任何有关如何以最佳/最简单的方式处理此问题的输入。
目前,正在开发Web服务器的人不知道/没有处理我将开发的应用程序的请求的系统,因此他们很可能需要创建新的系统。
身份验证: 据我所知,使用HTTP身份验证根本不安全,最好的方法是使用HTTPS?如果使用HTTPS或HTTP,iPhone应用程序会有什么区别?我想服务器和客户端都需要证书,苹果公司对使用SSL有何看法?
无论我选择什么,它是怎么工作的? 1. 创建一个NSURLConnection与服务器连接,监听didReceiveAuthenticationChallenge回调并响应用户/密码 2. 使用创建的连接发送任何其他信息?
与Web服务器通信: 该应用程序需要向服务器发送约20个不同的请求,并需要根据响应进行操作。SOAP或任何其他Web服务是否是处理此问题的好方法?我相信SOAP基本上是XML over HTTP,因此在应用程序中,这应该很容易,只需创建NSMutableURLRequest,然后使用XMLParser解析响应?
还是有另一个更好的解决方案吗?
谢谢
1个回答

5
据我所知,使用HTTP身份验证并不安全,最好的方法是使用HTTPS?
是的。通过HTTP传输的数据是以明文形式传输的,这意味着您的密码、信用卡信息等都可以在它们穿过公共互联网时被拦截。通过HTTPS传输的数据是加密的,因此只有客户端和接收服务器才能解密它。
如果使用HTTPS或HTTP,iPhone应用程序会有什么区别?
基本上没有区别。加密数据会带来一些开销,但不多。
我想服务器和客户端都需要证书,苹果公司对使用SSL有何看法?
是的,服务器需要SSL证书。GoDaddy每年售价约为25美元。苹果公司非常支持您使用它们。

如果您不想花钱购买官方SSL证书,服务器也可以使用自签名的SSL证书。NSURLConnection有一个委托方法,您可以实现该方法来接受自签名证书。 - Stefan Arentz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接