轻量级机制,用于加密android上的sqlite数据库,无需发送自定义的sqlite发行版

时间:2014-06-06 07:12:41

标签: android database sqlite encryption android-sqlite

我正在构建一个Android应用程序,我想在sqlite数据库中维护某些细节。我正在使用SQLiteOpenHelper接口,以便为访问数据库的所有线程维护数据库的单个实例。

出于安全考虑,我想加密我的数据库,因为如果数据库文件未加密,则可以在root用户设备上查看数据库文件。 为了避免这种情况,我想加密数据库文件。 我已经通过SEE,wxSQLite,SQLiteCrypt和botansqlite3,但它们都需要将SQLite的cutomized发行版发送到Android设备上。 我希望使用Android附带的SQLite的正常分发来保护我的数据库文件。

此外,我尝试使用SQLCipher,但它增加了我的应用程序的总大小8-10MB。不使用SQLCipher的另一个原因是它不支持mips architecure(但是这可以在以后通过源代码中的一些修改来构建)。

此外,我的数据库将被许多线程访问和更新,并且将一直由服务加载,因此在加载/打开时解密数据库并在卸载/关闭时加密对我来说不起作用。应该可以仅在加密数据库上触发查询,或者应该有一些替代解决方案,例如创建临时数据库,解密它并对其执行操作。

有人能建议我在Android设备上加密SQLite数据库的轻量级解决方案吗?

提前致谢。

0 个答案:

没有答案