首页 > 解决方案 > 如何通过 SecureEnclave 持久存储加密数据

问题描述

我听说过 Secure Enclave。其中密钥生成后,可以通过 SecKeyCreateEncryptedData 方法对数据进行加密。

我的用例:我想永久存储一些敏感数据。出于安全考虑,我使用 Secure Enclave 通过上述方法对数据进行了加密。

现在只想知道将加密数据存储在 NSUserDefaults 或 Keychain 中是否合法。或者还有其他事情要做。

任何帮助将非常感激!

标签: iosobjective-cswiftiphone

解决方案


由于数据是加密的,因此您可以随意存储它。如果没有 Secure Enclave 内的密钥,数据将毫无价值。

您可以采用多种方法:将其保存到 UserDefaults、在文档目录中创建 JSON 等。

假设您要将其保存到 UserDefaults 然后查看此链接: 如何在 Swift 中使用 UserDefaults?

关于安全飞地和加密套件的有价值的文章: https ://www.andyibanez.com/posts/cryptokit-secure-enclave/


推荐阅读