iOS在Keychain中存储IAP标志,因此它是安全的

时间:2016-01-06 11:49:10

标签: ios security keychain

我正在实施Keychain来存储成功IAP的标志。我有一些关于安全性的问题,因为我不知道有人破解我的应用程序可以看到哪些对象。

KeychainItemWrapper *wrapper = [[KeychainItemWrapper alloc] initWithIdentifier:@"theKey" accessGroup:nil];

[wrapper setObject:@"password" forKey:(id)kSecValueData];

如果我在上面的setObjectForKey方法中写入密码,是否有人能够在可执行文件中看到密码文字或变量?当我设置这个时,是不是“赤身裸体”并且容易被邪恶的黑客抓住?

1 个答案:

答案 0 :(得分:0)

您的安全问题是用户将更改文件,而不是阅读"尚未购买的IAP"它现在读取"已经购买了IAP"。避免这种情况的最简单方法是通过将用户的identifierForVendor存储在文件变量中来表明已购买IAP,甚至是NSUserDefault。每个设备的identifierForVendor都不同。如果你想增加安全性,那么创建一个hashForVendor的哈希值和一个秘密字符串,只有你知道"我的秘密"。