我有一个iOS应用程序,它定期连接到服务器以查找数据更新。连接使用SSL和HTTPBasicAuthentication。
在应用中包含我的服务器登录凭据的最佳方法是什么?根据我的理解,越狱的iPhone可以读取我的构建文件,并轻松查看用户名和密码登录我的服务器。
谢谢,
麦克
答案 0 :(得分:3)
没有办法完全确保这一点。您可以做的最好的方法是稍微模糊它(可能是您在应用程序中解密的加密文件),然后监视服务器以查找不是来自应用程序的流量。
如果你想偷偷摸摸加密身份验证数据,然后使用某种速记 - 将凭证嵌入到图像中,或者甚至将原始数据嵌入到看起来像其他东西的文件中(如SSH密钥)。
但越狱的开发人员将始终能够挂钩您的应用程序以查看解析结果,或者可能运行SSH代理来简单地监控您发送的所有内容。
答案 1 :(得分:0)
您不必“越狱”您的应用来阅读网址。 Mac上的一个简单的数据包嗅探器软件就可以实现。通过Mac的Wifi路由所有iPhone流量并嗅探它。 但是,这里的主要问题是,为什么?
如果要保护数据,则应该安全地进行保护。如果你在某个plist的应用程序中硬编码用户名/密码,那么某处就会出现问题。
检查更新无需是安全的,因为真正的数据访问应该是安全的。如果要下载In App Purchase的数据,请根据IAP收据进行验证。如果您正在为拥有服务帐户的用户下载数据,那么他显然会输入密码,如果您使用适当的加密方法,则不会被数据包嗅探器“嗅探”。