01 September 2010 Android Developers' Blog讨论了保护Android LVL应用程序的安全性。为了使应用程序防篡改,它描述了以下技术: -
为了让攻击者从代码中删除LVL,他们必须这样做 修改你的代码。除非精确地完成,否则您可以检测到 码。您可以在此处使用几种方法。
最明显的机制是使用轻量级哈希函数,例如 作为CRC32,并构建应用程序代码的哈希值。那你可以 将此校验和与已知的良好值进行比较。你可以找到路径 通过调用context.GetApplicationInfo() - 您的应用程序的文件 - 只是一定要不要计算包含你的文件的校验和 校验! (考虑将此信息存储在第三方服务器上。)
这是什么意思?应该将哪些文件放入哈希函数?你如何将哈希值与校验和进行比较(因为如果你随后在源代码中添加了校验和比较检查并重建它,你会得到一个不同的校验和?
如果您的应用能够从单独的服务器获取校验和,我是否认为此方法仅用于任何用途?