我在哪里可以安全地在Android应用程序上存储db密码?

时间:2013-08-09 15:45:40

标签: android database sharedpreferences password-protection sqlcipher

我有一个带有“sqlcipher库”的加密数据库,但现在我不知道我可以在应用程序内以正确的方式存储db passwrod。 我认为PRIVATE_MODE中的SharedPreferences是存储它的好地方;但我不确定。 有什么建议吗? 谢谢。

3 个答案:

答案 0 :(得分:2)

即使您要在应用程序本身中隐藏密码,它仍然可以反编译并找到。在具有root的设备上没有安全的地方。您最好的办法是将数据库放在Web服务器上,并从服务器中检索数据。这是保护数据库免受用户保护的唯一方法(如果服务器设置安全且可靠)。

答案 1 :(得分:2)

  

我不知道在哪里可以以正确的方式存储db passwrod

“正确的方法”是密码在用户头脑中,因为使用SQLCipher for Android的唯一原因是允许用户保护用户的数据。

您似乎正在尝试将SQLCipher for Android用作DRM机制,但这不起作用。如果有足够的兴趣,您无法在“应用内部”存储用户无法访问的密码。

答案 2 :(得分:1)

取决于你想成为多么偏执。如果设备没有root,那将会有效。如果它是root的,设备上就没有安全的地方。