我是 Flutter 新手,需要一些建议。
我正在开发一个移动应用程序,我需要将一些敏感的用户信息保存到数据库中。我正在使用加密库(https://pub.dev/packages/encrypt),并且选择了对称算法。按照示例并调整代码,我能够为每个用户生成不同的随机密钥,将加密信息保存到数据库,然后在我的应用程序中解密信息。
问题是在第二次登录时我丢失了加密密钥并且无法解密。于是我想到用flutter_secure_storage保存密钥,问题就解决了
此时另一个问题出现了。如果我更换设备,我仍然无法解密信息,因为解密密钥位于另一台设备上。
我显然做错了什么。
最佳实践是什么?任何帮助都会有很大帮助
我希望安全地管理加密密钥并保证用户数据和隐私的安全。
在根据您的架构找到更好的方法之前,您可以使用应用程序会记住的密钥(作为字符串),而不是每次生成一个密钥。
final key = Key.fromUtf8('my 32 length key................');