swift - IAP 的 NSCoding 或 Userdefaults

标签 swift in-app-purchase nscoding userdefaults

我有一个简单的问题:

要在 Swift 中存储购买的 iap,使用 Userdefaults 或 NSCoding 最安全吗?我不想使用“收据验证”,所以我只想知道上面两种方法中哪一种更“难”用越狱手机破解。

最佳答案

钥匙串(keychain)是一种安全存储。您可以在其中存储所有类型的敏感数据:用户密码、信用卡号、 secret token 等。一旦存储在钥匙串(keychain)中,此信息仅对您的应用可用,其他应用无法看到。除此之外,操作系统确保此信息得到安全保存和处理。例如,无法从 iPhone 备份或其文件系统中提取钥匙串(keychain)中存储的文本。 Apple 建议仅在钥匙串(keychain)中存储少量数据。如果你需要保护大的东西,你可以手动加密它,保存到文件并将 key 存储在钥匙串(keychain)中。

您可以使用此框架轻松使用钥匙串(keychain): https://github.com/marketplacer/keychain-swift

关于swift - IAP 的 NSCoding 或 Userdefaults,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43951809/

相关文章:

iphone - iphone 应用内购买的价格,服务器端

iphone - 如何跨设备维护应用内购买状态并恢复

iphone - iPhone 应用程序内的捐赠功能

ios - 如果模型对象文件有很多依赖项,如何将其导入到我的 watch 扩展中

ios - Xcode 9 GM - WKWebView NSCoding 支持在以前的版本中被破坏

arrays - 计算数组数组中的项目?

ios - 坚持创建事件和格式化日期(Swift - EventKit - OS X)

Swift - 如何检查分配给按钮的图像

ios - NSKeyedUnarchiver 是否仍然在 iOS9 中抛出异常?

swift - Dropbox SDK 请求错误