Sqlite数据库安全性

时间:2010-06-29 11:35:20

标签: android sqlite security

我正在开发一个存储用户敏感数据的应用程序。我的问题是使用用户可以查看存储数据的其他应用程序。然后我需要为数据提供更好的安全性。

有没有办法为SQLite数据库和表提供更好的安全性?

6 个答案:

答案 0 :(得分:15)

在数据库中输入数据之前对其进行加密。据我所知,SQLite数据库保存在/ data /目录中的某个文件中。更重要的是,您的数据以纯文本格式保存。这意味着有人可以通过生根电话,获取.db SQLite文件并使用文本编辑器打开它来提取数据。

所以,加密你的数据:)

- 好吧,也许不是文本编辑器,而是简单的十六进制编辑器。反正...

答案 1 :(得分:12)

结帐SQLCipher for Android。它是免费的(Apache 2和BSD许可证)。

PS。:有些ORM现在也支持SQLCipher,例如我们的greenDAO

答案 2 :(得分:6)

sqlite的作者提供了一个加密数据的版本。它不是免费的

答案 3 :(得分:5)

您可以使用从服务器检索到的特定于用户的盐来加密数据。这样,即使使用root访问权限,您也需要用户salt来解密数据库。由于您可以控制盐,因此您的用户将始终需要网络连接来访问其数据。

答案 4 :(得分:1)

为什么要在手机上保存敏感数据?如果它敏感,为什么不将它发送回你可以控制事物的服务器。如果用户根据他们的手机,他们基本上可以做他们想要的。除此之外,像Shade所提到的加密可能是你唯一的选择...

答案 5 :(得分:0)

保护数据库的好方法是使用密码保护数据库,您可以使用

创建它

1- android Sql3包装器库

2- libsqlite3_jni.so

另请阅读下面的文章是对上面的选项进行搜索,我希望这会有所帮助。

http://www.findbestopensource.com/product/sqlite3-android