Android:数据库与应用程序打包的安全性如何

Sap*_*pan 10 database sqlite android

我想知道用android中的应用程序打包数据库是多么安全.用户可以轻松访问数据库吗?由于我拥有的数据库将拥有数据,我不想被用户滥用而被滥用,在移动应用程序中保护数据库的最佳方法是什么?

我的应用程序也将使用Web服务(联系我自己的网站),例如http:\ www.mysite.com/services/xxx

我的网站会将一些数据返回给移动应用.如果有人反编译java代码(在apk中),他将很容易访问我用于Web服务的URL.如何保护我的网站数据免受恶意用户的攻击.如果有人知道URL,他只需在浏览器中键入该URL并获取json格式的所有数据,这是我不想要的,因为这些数据可能非常敏感.即使我保持编码,用户也可以从java代码(他在反编译apk后获得)中了解编码.

如何保护我的数据库不被滥用?

如果我的应用程序要在移动设备上显示诸如餐馆,酒吧等本地地点,我应该总是使用网络服务从网站上获取它们,或者提供具有这些详细信息的本地数据库,以便可以快速获取信息.在这种情况下,我可以提供UPDATE Web服务,它将更新本地数据库.但是本地数据库的安全性对我来说非常重要.

任何人都可以建议在哪里保留数据库以及如何保护它?

Rgds,Sapan

Kni*_*edi 8

任何有根设备都可以轻松读取本地数据库和您的apk文件.这个工具 甚至可以反编译您的资源,如本youtube教程中所述(我实际上从未尝试过).

因此,您必须将数据加密存储在数据库中并从应用程序代码中解密,以确保没有人可以通过简单地将数据库data从其设备目录中获取来访问它.

您不应将敏感数据(如密码等)放在资源文件夹中,因为它可以反编译,放在您的代码中.

现在你的JSON API有些话.隐藏URL是不够的,因为用户可以通过嗅探器轻松跟踪您的请求,无论如何都可以获取.您应该提供身份验证机制来保护未经授权的访问,并通过SSL保护您的通信.(例如,使用HTTP身份验证 - 仅在您的服务器提供SSL时才有意义.)

这是您应该考虑的事情,并决定您的数据实际上有多敏感.