我正在编写一个Android应用程序,我需要在设备上存储一些信息,但是当用户在应用程序管理器上按下“清理数据”时,我不希望这些信息被清除。我也不想存储在存储图像和音乐的“正常”位置,因为用户可以看到它并将其删除。存储文件安全的地方?
它在哪里是存储这些文件的最佳位置?
我正在编写一个Android应用程序,我需要在设备上存储一些信息,但是当用户在应用程序管理器上按下“清理数据”时,我不希望这些信息被清除。我也不想存储在存储图像和音乐的“正常”位置,因为用户可以看到它并将其删除。存储文件安全的地方?
它在哪里是存储这些文件的最佳位置?
我会用javax.crypto。*包加密。
JCA参考指南这里:http://docs.oracle.com/javase/6/docs/technotes/guides/security/crypto/CryptoSpec.html
要存储,您可以使用简单的SharedPreferences
如果用户清除你的应用程序的数据,SharedPreferences不见了:) – 2014-10-31 20:52:27
这不是加密问题。这是用户删除文件的问题。 – Fusseldieb 2014-10-31 20:52:48
hm所以如果我理解你的权利,你想创建一个永久文件的智能手机拥有者不能删除:D? – PKAP 2014-10-31 21:08:16
我觉得你的假设应该是你不能阻止它没有某种登录。 你不能真正阻止匿名用户作弊,你应该考虑这些数据的重要性,以及你愿意投资多少以获得最佳结果。
这就是说,为了使之更难以作弊,我会用android.os.Build.SERIAL 即使它不是100%独特的,它仍然是聊胜于无。
为了更难生成连续剧,我也会加密这个连续剧,所以如果一些用户嗅探到你的请求并想多次投票,他也需要知道如何加密它。
同样地,如果一些用户想欺骗他可以,但这样你至少消除懒惰作弊:)
如果是用户真的不应该访问的数据 - 他的设备是不是地方存储它。 – 2014-10-31 20:38:08
但它是一个唯一的ID。我需要存储在用户设备上。 – Fusseldieb 2014-10-31 20:40:32
您是何时以及何时生成此唯一ID的? – 2014-10-31 20:41:42