8

我正在通过以下代码在 Flutter 中创建数据库,有什么方法可以加密数据库吗?

Flutter 有可用的库吗?

initDb() async {
    io.Directory documentsDirectory = await getApplicationDocumentsDirectory();
    String path = join(documentsDirectory.path, "test.db");
    var theDb = await openDatabase(path, version: 1, onCreate: _onCreate);
    return theDb;
  }
4

3 回答 3

5

Pointy Castle似乎是目前首选的加密库。

于 2018-05-08T18:11:27.480 回答
1

当前 sqflite 使用平台提供的任何 sqlite 版本。这里有一个讨论,你可以在这里关注: https ://github.com/tekartik/sqflite/issues/32

我现在知道的唯一解决方案是这个https://github.com/QwilApp/encrypted_sqlite可以用作 sqflite 的替代品,正如您所说,它在本机端使用 SQLCipher

于 2018-11-29T08:21:31.890 回答
1

我今天也在找这样的图书馆。

最后我在pub.dev中找到了flutter_sqlcipher,确实解决了我的问题。

这是它的描述。

这是一个 Flutter 插件,它捆绑和包装了 SQLCipher for Android,它是 SQLite 的开源扩展,提供透明的 256 位 AES 数据库文件加密。

希望它可以帮助你。

于 2019-08-12T19:47:45.930 回答