摘要
随着传统代码加固手段逐渐被逆向工程攻破,Android软件所面临的安全风险越来越大,文章以Java代码Native化技术为基础,结合代码虚拟化技术,提出一种基于Java代码Native化的ARM VMP保护方案,将Android应用中容易被反编译的Java层代码下沉到Native层,并使用ARM VMP技术进一步对Native层代码进行保护,目的是在不需要为Java代码和C++代码各自设计一套执行虚拟指令的虚拟机的前提下,将指令虚拟化技术覆盖至Java代码和Native层代码。理论分析与实验结果证明,文章所提方案能够在提升代码逆向难度的同时控制加固后Android安装包的体积大小。