Flutter 安全存储应用的工作原理

Flutter 安全存储应用的工作原理,flutter,dart,encryption,aes,file-security,Flutter,Dart,Encryption,Aes,File Security,我想用这样的颤振来制作一个移动应用程序 但我不知道如何保证数据的安全 我使用了aes_crpyt包(),它允许我加密和解密文件 但是,如何检索要在应用程序中显示的数据而不将其解密为普通文件,这些文件可以使用任何可以访问根文件的资源管理器打开您可以签出此包:。从文件中: 钥匙链用于iOS AES加密用于Android。AES密钥使用RSA加密,RSA密钥存储在密钥库中 这样,您的数据可以通过加密以更安全的方式以SharedReferences的方式保存 示例语法: import'程序包:fl

我想用这样的颤振来制作一个移动应用程序

但我不知道如何保证数据的安全

我使用了aes_crpyt包(),它允许我加密和解密文件
但是,如何检索要在应用程序中显示的数据而不将其解密为普通文件,这些文件可以使用任何可以访问根文件的资源管理器打开

您可以签出此包:。从文件中:

  • 钥匙链用于iOS
  • AES加密用于Android。AES密钥使用RSA加密,RSA密钥存储在密钥库中
这样,您的数据可以通过加密以更安全的方式以
SharedReferences
的方式保存

示例语法:

import'程序包:flatter_secure_storage/flatter_secure_storage.dart';
//创建存储
最终存储=新存储();
//读取值
字符串值=等待存储。读取(键:键);
//读取所有值
Map allValues=wait storage.readAll();
//删除值
等待存储。删除(键:键);
//全部删除
等待存储。deleteAll();
//写值
等待存储。写入(键:键,值:值);
因为任何数据库的目的都只是存储纯信息性的有组织的数据。它不适合存储大文件,如媒体、文档或图像。有两种选择:

  • 将加密文件上载到Firebase,然后将加密路径保存到DB
  • 将加密文件保存到本地存储,然后存储加密路径

  • 我建议使用第1种方法,因为这样可以避免将加密文件保存在本地,并有可能将其暴露给其他用户。

    它只加密字符串。我想加密像图像和视频这样的文件。我已经更新了我的答案。好的,我已经加密了文件并保存在本地存储器中,但是当用户打开应用程序时,我必须解密要显示的内容。可以使用根资源管理器访问它。我怎样才能防止呢?