APK 防破解常用技术汇总引言防破解技术汇合关键逻辑放服务端用 native code 替代 Java 代码 VsID5hN
eBqEtNx
代码混淆Java 代码混淆 native code 混淆 运行前做完整性校验,防止重打包zip 加密位法 dex 加密隐藏 dex 嵌入异常汇编法 资源混淆法禁止调试与模拟器检测附录资料安卓破解常用工具软件加固 apk 实例 引言安卓应用防止破解和重打包可以选择梆梆加固、阿里聚安全、爱加密等成熟解决方案,他们的加固比较彻底,使用的技术也比较深层次,所以破解难度也很大,但是有可能带来应用不稳定的问题,所以周期长
z2olKNi
XYO7XgX
假如不选择梆梆加固等的成熟方案,那么可以选择将一些防破解和重打包的对抗技术组合使用,虽然不如成熟方案层次深,但是使用简单,周期短,防住普通破解者也有不错的效果
8qHbwLF
QtJG648
这里将一些这样的防破解技术整理如下,仅供参考
每个技术都标注了易用性和防破解效果,易用性越高表明越容易实现,防破解效果越高表明攻击者越难破解
其中易用性越高表明越容易开发实现,防破解能力越高表明攻击者越难破解
5zfhQaK
g1CMI14
防破解技术汇合关键逻辑放服务端尽可能将关键的逻辑代码放在服务端运行,减少敏感代码暴露在客户端
让客户端只做一些 API请求和界面交互
ihL1eeS
d7Ba3h0
易用性:高防破解能力:中用 native code 替代 Java 代码将一部分关键的或者计算密集型的代码用 native code (Android NDK)来编写,不仅能提高运行效率,也能增加攻击者的逆向难度
4c2QKaW
c4r3uCw
易用性:中防破解能力:高代码混淆Java 代码混淆安卓标配了 proguard,推举使用
易用性:高防破解能力:中native code 混淆对 native cod