在 Android 应用程序中使用 sqlcipher 保护用于解密加密数据库的密钥

Protect key used to decrypt encrypted database with sqlcipher in Android app

我正在开发一个 android 应用程序,其中包含一个数据库,该数据库以前在 "assets" 目录中加密过 SQLCipher。此 SQLite 数据库从目录 "assets" 复制到应用程序数据目录。

应用程序利用SQLCipher解密并访问数据库中的数据,但问题是数据库的密钥存储在一个字符串中,如果有人反编译APK文件可以得到密钥.

有什么方法可以保护密钥,使其无法获取该密钥来反编译 APK?

PS如果你不理解我,就不要用英文写好,因为我是西班牙人。

我们为 SQLCipher 提供了一些关于密钥 material 和选择 here 的指导,请注意,在应用程序代码中对密钥进行硬编码不适合任何安全实施。