ios - 如何通过 SecureEnclave 持久存储加密数据
问题描述
我听说过 Secure Enclave。其中密钥生成后,可以通过 SecKeyCreateEncryptedData 方法对数据进行加密。
我的用例:我想永久存储一些敏感数据。出于安全考虑,我使用 Secure Enclave 通过上述方法对数据进行了加密。
现在只想知道将加密数据存储在 NSUserDefaults 或 Keychain 中是否合法。或者还有其他事情要做。
任何帮助将非常感激!
解决方案
由于数据是加密的,因此您可以随意存储它。如果没有 Secure Enclave 内的密钥,数据将毫无价值。
您可以采用多种方法:将其保存到 UserDefaults、在文档目录中创建 JSON 等。
假设您要将其保存到 UserDefaults 然后查看此链接: 如何在 Swift 中使用 UserDefaults?
关于安全飞地和加密套件的有价值的文章: https ://www.andyibanez.com/posts/cryptokit-secure-enclave/
推荐阅读
- c# - 当我尝试打开 PDF 时,Xamarin C#“我们无权打开此文件”
- azure-blob-storage - ADLS Gen2 上的 Polybase - CSV 文件作为源失败并出现“HdfsBridge::recordReaderFillBuffer”错误
- javascript - 异步调用后如何自动对焦选择输入?
- angular - 单个水疗中心不会同时显示两个应用程序
- python - 无法将 NumPy 数组转换为张量(不支持的对象类型浮点数)
- r - 如果满足三个条件,R子集3d数组并修改特定值
- python - 如果尚不存在,Django 多对一创建父(“一个”)条目
- ruby-on-rails - 将 puma / systemd 与套接字激活一起使用有什么好处?
- c# - 开发与 .NET Core 1 和 .NET Core 3 相同的 .NET Core 源代码
- django - Django 管理员在模式而不是弹出窗口中添加新的 FK 显示