【发布时间】:2017-05-28 05:45:37
【问题描述】:
我正在开发一个 android 库,我想对我的代码应用篡改检测机制,因为它会调用一些敏感的金融 Web 服务。
我要实现的是在运行时以编程方式计算 apk(或其重要部分)的校验和,这样我就可以防止重新打包或重新编译的 apk 造成任何伤害(防篡改)。
到目前为止,我想出的是计算applicationInfo.publicSourceDir 的校验和。但我不确定具有多个 dex 文件或多个 splitApk 的应用会发生什么。
以编程方式根据 Android 应用程序的代码库计算校验和的最可靠方法是什么?
【问题讨论】:
-
有人可以通过绕过篡改检测机制的方式篡改应用程序(只是大声思考)
-
我们要防止带有有害 dex 的 apk 重新打包攻击,即使签名保持不变
-
@FarhadFaghihi 参考这个,stackoverflow.com/questions/9293019/…。可以找到应用程序的证书指纹
标签: java android android-library dex android-security