我有一个通过用户名和密码通过restful api连接到数据库的服务。我的问题是在我的iOS应用程序中存储这些凭据的最佳方法是什么,以便任何攻击者都无法看到它们(访问我们的数据库)?是否将用户名和密码存储在私有变量中?我是否使用钥匙扣?如果我使用钥匙串我该如何使用它,这些用户是否可以访问该信息?
答案 0 :(得分:0)
钥匙扣是最佳选择。我将UICKeyChainStore用于自己的应用。
使用该API实际上很简单。以下是其页面中的示例:
UICKeyChainStore *keychain = [UICKeyChainStore keyChainStoreWithService:@"com.example.github-token"];
keychain[@"kishikawakatsumi"] = @"01234567-89ab-cdef-0123-456789abcdef";
另一种选择是仅在NSUserDefaults中存储密码哈希。您可以阅读有关散列here的最佳做法。