我的应用程序会频繁连接到 Web 服务以获取 json 中的一些数据。
有没有一种方法可以在服务器端加密这些数据并在应用程序端解密,以便传输的数据安全可靠?
此外,如果该应用程序带有自己的数据库(sqlite db 文件),使用该应用程序的任何人都可以查看该数据库(表、字段和内容)吗?
问候, 沙巴
最佳答案
传输加密数据的最简单选择是使用 SSL (即 https)用于应用程序和网络服务之间的通信。
如果您需要为服务器设置您自己的自签名证书(而不是购买一个),您可能无法让 android 与其通信,但这是可行的。参见 this SO question获取提示。
关于读数据库,说不定可以。我假设如果攻击者有足够的决心,可以访问手机的攻击者可以读取数据库。如果您希望数据真正安全,则必须将数据库存储在加密文件中,并要求用户在每次打开您的应用程序时都输入密码。 您必须决定您真正需要多少安全性。
不过,当您通过网络传输数据时,您绝对应该对数据进行 SSL 加密。
关于android通过网络加密json数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5879911/