-3

我有一个带有 100k+ 行的 SQLite 数据库的 android 应用程序,从 assets 文件夹中的 *.db 文件填充。

我想让数据库更难从设备中提取出来。

首先,有人拉数据库的方法是什么?

  • 他可以获取 APK 并从 assets 文件夹中提取 *.db 文件

  • 应用启动后,可以查询设备的sqlite服务器

那么,让数据库更难拉取的方法是什么:

  • 加密资产文件夹中的 *.db 文件

  • 适用于 Android 的 SQLCipher?无论如何,我不希望用户输入密码,我(客户端)只是想让 SQLite 更难被提取,比如将密码存储在代码中并使用 proguard 使其难以找到

问候

4

2 回答 2

2

那么如果你想保护文件必须在android的“根”目录下。为此,您需要从服务器下载“.DB”文件并将其移动到“根”目录。但是,这需要第一次运行应用程序的互联网连接

另一种方法是使用,

SQliteCrypt - 使用 SQLiteCrypt,您可以加密 SQLite 数据库,用户无需输入密码,您可以在提取数据时在 java 文件中设置密钥。这将更加安全、快速和可靠。

于 2018-05-08T10:30:54.593 回答
0

我不知道为什么我被否决了,但我认为没有比最初建议的更好的选择来保护数据。

于 2018-05-14T14:04:46.867 回答