ios - 如何保护(加密)webkit/local store 存储的数据

标签 ios security encryption webkit data-protection

我正在开发一个使用 PhoneGap 框架的应用程序,因此它只是一个使用 HTML5 的普通网络应用程序。与许多网络应用程序一样,我的客户也希望在设备离线时可以使用数据。对于那些情况,我想将数据存储在浏览器的本地存储中。

但是,客户还希望对数据进行加密,以防万一设备丢失,敏感数据不会落入坏人之手。我目前的研究提出了 2 个可能的方法:

1) 在存储到本地存储之前,使用 JS 加密框架对任何数据进行加密。由于我的应用程序需要用户登录,因此我可以使用用户密码来派生加密 key (用户密码存储在 iOS 钥匙串(keychain)中)

2) 用户iOS的数据保护机制https://www.apple.com/business/docs/iOS_Security_Guide.pdf

对于 2),在开发人员门户(应用程序 ID 部分)中启用数据保护是否正确实际上不加密任何内容,而是启用加密的可能性使用适当的 NSDataNSFileManager 操作的特定文件? 还是可以通过在 App ID/配置文件级别启用数据保护来加密整个沙箱(包括浏览器本地存储!)?

是否有任何其他推荐的方法来保护浏览器本地存储中存储的数据?

最佳答案

第一个选项适用于跨设备。

我在研究中发现的两个可靠的 JS 加密框架是

无论您做什么,请确保用于派生加密 key (在您的示例中为密码)的可能数据已安全存储。

关于ios - 如何保护(加密)webkit/local store 存储的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15945216/

相关文章:

javascript - 通过 location.replace 替换哈希被认为有害吗?

iphone - AES 256/CBC/Withoutpadding in objective-c

android - 在 App Store 上过时的应用程序并推广另一个应用程序

ios - swift 。 UIBezierPath 边框颜色

security - PGP 和 SMIME 之间的区别

python - 凯撒密码按关键字的 ASCII 值而不是数字进行移位

java - Java 中用于 C# 构造的加密/解密等价物

ios - 交互转场+结束动画怎么做?

ios - Swift 错误 - 不可变值 '' 可能无法传入

ios - iOS 应用程序供应商 ID 是否被视为敏感数据?