2012-08-14 75 views
0

将敏感数据添加到iOS应用程序的最佳做法是什么? 对于敏感数据,我指的是与某些外部服务器进行通信的密钥或令牌。将敏感数据添加到iOS应用程序构建

我们可以在应用程序中编译证书,并且iOS可以在安装时删除它吗?

我觉得我们不能100%保证它的安全性,但是我们可以添加的最佳实践层是什么。

回答

0

没有任何机制可以确保服务器只允许您的应用程序与其通话。所以如果这是你的目标,那么它是无法解决的。这已经在SO上讨论过死亡。短短数:

(而这些帖子中的诸多环节。)

和其他地方:

您无法验证设备或软件。您只能验证用户身份。这意味着登录。如果没有部分存储在用户大脑中的登录信息(或者至少与iPhone分离),这只是模糊处理。

现在,这并不意味着混淆无用。事实并非如此。您可以从简单的身份验证令牌(如客户端密钥)中获得一些里程数,但不要期望它能够在攻击中幸存下来。这并不意味着你不应该这样做;它只是意味着你不应该花很多时间/金钱,因为它会很快失败。

在任何情况下,您都不应该执行支付给客户的东西。阅读上面链接的几个线程(以及从这些线程链接的几个线程)。如果在那之后,你仍然绝对需要一个解决方案,那么你需要聘请一个人来跟踪裂缝,并在每次出现新裂缝时修复它们。它永远不会停止。