0

我的应用每 5 分钟获取一次用户的 GPS 位置,将其保存,然后将其发送到服务器。我面临的问题是我需要对存储在 android SD 卡上的数据进行加密,以便服务器上除了我之外没有人可以访问它。我还需要想办法确保除了我之外没有人编辑过数据。最后,我想在每次关闭文件时写入文件的 MD5 校验和,因此当应用程序打开文件时,它会检查 MD5 以查看它们是否匹配。问题是我认为这会浪费资源和电池,因为我已经每 5 分钟检查一次 GPS 位置。任何关于加密数据的想法都将不胜感激,我一直无法找到最安全的方式谢谢!!!

编辑:我已经检查了密码学的主题,但一切似乎都认为它容易受到任何有一点时间的人的攻击,这就是我问的原因!

4

1 回答 1

0

您应该使用带有 SqlCipher 的 Sqlite 存储您的数据:http: //sqlcipher.net/sqlcipher-for-android/

正如您所说,没有办法完全阻止确定的攻击者查看/编辑数据,因为您必须在程序代码或系统某处的保存文件中公开您的加密密钥。

但是,您或我编写的任何本土解决方案都不会更好,这只是硬件/操作系统的本质。

如果您希望数据不被读取,我建议您在传输到服务器后将其删除。

此外,如果您每 5 分钟检查一次 GPS,那么与此相比,您几乎没有什么可以做的会明显消耗电池电量。

于 2013-02-10T06:43:42.343 回答