iPhone应用程序和安全性?

001*_*001 2 security ios4 ios

你如何在iPhone应用程序中获得密钥?

我有一个客户端应用程序使用的API密钥,并且不希望任何人看到它,只有应用程序应该能够读取它.

1)如何在我的应用程序中安全地存储它?将它存储到变量中?够好吗?

2)如果有人解密我的申请会怎么样?(那可能吗?)

Zed*_*Zed 7

这里有很多问题,所以让我一次回答一个问题:

你如何在iPhone应用程序中获得密钥?

我假设您正在尝试从应用程序的用户那里获取它.除非您使用可信计算平台,即这是不可能的.可以信任的平台从它的主人服从命令(有时也被称为奸诈计算这个原因).据我所知,iPhone不是这样一个平台.

我有一个客户端应用程序使用的API密钥,并且不希望任何人看到它,只有应用程序应该能够读取它.

如果您的应用程序可以读取它,那么运行您的应用程序的平台的所有者也可以读取它.(例外情况是可信计算平台 - 见上文.)

如何在我的应用程序中安全地存储它?

你不能.

将它存储到变量中?

你可能会.

够好吗?

没有.

如果有人解密我的申请会怎么样?

然后他得到你的钥匙.

那可能吗?

是.

如果您不希望用户知道您的密钥,请不要首先将其提供给他们.设置应用程序将连接到的代理服务器并保留您的秘密.

有一句老话说,除非知道不超过两个人,否则每个秘密都必须像公共知识一样对待.这也适用于软件.