我能否以第三方无法识别和欺骗的方式与我的服务器通信?
Can I communicate with my server in a way that can't be figured out and spoofed by a third party?
似乎 Xcode/iOS 中有几个选择可以与我的服务器通信,使用简单的 HTTP 请求或创建一个完整的套接字系统。各自有哪些弱点?我主要担心的是我不能允许某人复制不是来自我的应用程序的调用,就像您可以通过检查网页的 Javascript 并获取调用地址来欺骗 AJAX 调用一样。显然,使用 phone 应用程序不会那么简单,但我不知道黑客有什么可能。
- 使用 HTTPS。
- Override the TLS chain validation 如果 public 密钥与您应用中存储的密钥不匹配,则失败。
在下面的 Apple TLS validation doc 中,从 "Listing 3 Overriding the trust object used by an NSURLConnection object" 开始,然后添加代码,以便如果证书评估成功,您将检查挑战保护 space 中的密钥是否与已知有效允许连接继续之前的一个或多个密钥。
似乎 Xcode/iOS 中有几个选择可以与我的服务器通信,使用简单的 HTTP 请求或创建一个完整的套接字系统。各自有哪些弱点?我主要担心的是我不能允许某人复制不是来自我的应用程序的调用,就像您可以通过检查网页的 Javascript 并获取调用地址来欺骗 AJAX 调用一样。显然,使用 phone 应用程序不会那么简单,但我不知道黑客有什么可能。
- 使用 HTTPS。
- Override the TLS chain validation 如果 public 密钥与您应用中存储的密钥不匹配,则失败。
在下面的 Apple TLS validation doc 中,从 "Listing 3 Overriding the trust object used by an NSURLConnection object" 开始,然后添加代码,以便如果证书评估成功,您将检查挑战保护 space 中的密钥是否与已知有效允许连接继续之前的一个或多个密钥。