声明
摘要
第一章 绪论
1.1 研究背景与意义
1.2 国内外研究现状
1.3 本文主要研究内容
1.4 本文组织结构
第二章 Android操作系统及其安全机制分析
2.1 Android应用程序结构和运行时环境
2.1.1 Android应用程序结构
2.1.2 Dalvik虚拟机运行时环境
2.1.3 ART虚拟机可执行文件结构
2.2 软件逆向攻击
2.2.1 逆向工程简介
2.2.2 常用逆向工具
2.2.3 反编译介绍
2.2.4 逆向攻击过程
2.3 代码混淆保护
2.3.1 代码混淆
2.3.2 评价标准
2.4 本章总结
第三章 基于bytecode混淆的Android应用保护方法
3.1 混淆方法概述
3.2 控制流平展
3.2.1 压扁控制流技术介绍
3.2.2 条件基本块分析以及混淆操作
3.3 分支路径混淆
3.4 数据流混淆
3.4.1 常量存储方式混淆
3.4.2 子函数返回值混淆
3.5 寄存器类型冲突及其解决
3.5.1 冲突问题产生的原因
3.5.2 指令集存储与修改
3.5.3 动态加载
3.5.4 代码自篡改技术
3.6 本章总结
第四章 原型系统的设计与实现
4.1 系统模块设计
4.2 关键数据结构
4.3 关键算法设计
4.3.1 常量存储方式混淆算法
4.3.2 函数调用返回值获取方式混淆算法
4.3.3 解决寄存器冲突问题算法
4.3.4 控制流平展化算法
4.4 本章小结
第五章 系统实验与分析
5.1 实验环境及目的
5.2 混淆技术评价
5.3 安全性分析
5.4 性能分析
5.5 本章小结
总结与展望
总结
展望
参考文献
致谢
攻读硕士学位期间取得的科研成果
西北大学;