我有一个通过 SSL 与 Web 服务对话的 iPhone 应用程序。我想与应用程序一起分发一个密钥,该应用程序可以用来向 Web 服务标识自己(一个应用程序密钥)。所有应用程序都可以使用相同的密钥,因此我可以为每个应用程序分配相同的密钥。
我怎样才能以一种保护它不被应用程序以外的任何东西发现或使用的方式分发它?
我正在使用带有 SQLite 数据库的 Core Data。
我有一个通过 SSL 与 Web 服务对话的 iPhone 应用程序。我想与应用程序一起分发一个密钥,该应用程序可以用来向 Web 服务标识自己(一个应用程序密钥)。所有应用程序都可以使用相同的密钥,因此我可以为每个应用程序分配相同的密钥。
我怎样才能以一种保护它不被应用程序以外的任何东西发现或使用的方式分发它?
我正在使用带有 SQLite 数据库的 Core Data。
您可以使用 iOS 钥匙串机制。谷歌以获取更多信息,或查看SFHFKeychainUtils
Buzz Andersen 的小班课程,它使处理钥匙链变得非常容易。
如果您担心 iOS 钥匙串提供的“真正”安全性,请阅读这篇非常有趣的 SO 文章。