Android软件数据保护方案的设计与实现
摘要 | 第4-5页 |
ABSTRACT | 第5-6页 |
第一章 绪论 | 第10-13页 |
1.1 研究背景 | 第10页 |
1.2 研究现状 | 第10-11页 |
1.3 研究内容和论文结构 | 第11-13页 |
第二章 Android平台软件数据安全威胁分析 | 第13-17页 |
2.1 Android平台体系结构和安全机制概述 | 第13-15页 |
2.1.1 Android平台体系结构介绍 | 第13-14页 |
2.1.2 Android平台安全机制介绍 | 第14-15页 |
2.2 Android平台软件数据安全威胁分析 | 第15-16页 |
2.3 本章小结 | 第16-17页 |
第三章 Android平台软件数据攻击手段研究 | 第17-21页 |
3.1 Android平台软件数据攻击手段分析 | 第17-19页 |
3.1.1 钓鱼 WIFI | 第17页 |
3.1.2 Android 游戏修改器 | 第17-18页 |
3.1.3 Activity 劫持 | 第18页 |
3.1.4 逆向工程 | 第18-19页 |
3.2 Android平台软件数据攻击手段总结 | 第19-20页 |
3.3 本章小结 | 第20-21页 |
第四章 软件数据保护方案的设计与实现 | 第21-61页 |
4.1 软件数据保护方案总体设计 | 第21-23页 |
4.1.1 软件数据保护方案设计原则分析 | 第21页 |
4.1.2 软件数据保护方案总体设计 | 第21-23页 |
4.2 密码防护子模块 | 第23-28页 |
4.2.1 AES加密算法 | 第23-24页 |
4.2.2 消息摘要算法SHA-1 | 第24-25页 |
4.2.3 密钥生成 | 第25-26页 |
4.2.4 数据加/解密 | 第26-27页 |
4.2.5 小结 | 第27-28页 |
4.3 逆向防护子模块 | 第28-38页 |
4.3.1 APK 逆向技术 | 第28-29页 |
4.3.2 对抗反编译 | 第29-30页 |
4.3.3 对抗静态分析 | 第30-34页 |
4.3.4 对抗动态调试 | 第34-37页 |
4.3.5 对抗重编译 | 第37-38页 |
4.3.6 小结 | 第38页 |
4.4 dex防护子模块 | 第38-47页 |
4.4.1 Dalvik 虚拟机 | 第39页 |
4.4.2 Android应用程序包分析 | 第39-41页 |
4.4.3 dex 预处理 | 第41-44页 |
4.4.4 动态加载 | 第44-45页 |
4.4.5 效果验证 | 第45-47页 |
4.4.6 小结 | 第47页 |
4.5 通信防护子模块 | 第47-50页 |
4.5.1 服务器端实现 | 第48页 |
4.5.2 客户端实现 | 第48-49页 |
4.5.3 SSL握手流程 | 第49页 |
4.5.4 小结 | 第49-50页 |
4.6 组件防护子模块 | 第50-54页 |
4.6.1 Android的四大组件 | 第50页 |
4.6.2 最小化组件暴露 | 第50-51页 |
4.6.3 设置组件访问权限 | 第51-52页 |
4.6.4 暴露组件代码检查 | 第52-53页 |
4.6.5 组件劫持检查 | 第53-54页 |
4.6.6 组件间通信数据加密 | 第54页 |
4.6.7 小结 | 第54页 |
4.7 内存防护子模块 | 第54-57页 |
4.7.1 随机变量法 | 第55页 |
4.7.2 数组存储法 | 第55-57页 |
4.7.3 内存修改检测 | 第57页 |
4.7.4 小结 | 第57页 |
4.8 旁路数据防护子模块 | 第57-60页 |
4.8.1 系统级键盘泄露防护 | 第57-59页 |
4.8.2 Log日志泄露防护 | 第59-60页 |
4.8.3 小结 | 第60页 |
4.9 本章小结 | 第60-61页 |
第五章 方案分析与性能测试 | 第61-67页 |
5.1 方案分析与验证 | 第61-62页 |
5.2 性能测试 | 第62-65页 |
5.2.1 密码模块性能测试 | 第62-63页 |
5.2.2 dex动态加载性能测试 | 第63-64页 |
5.2.3 内存防护模块性能测试 | 第64-65页 |
5.3 本章小结 | 第65-67页 |
第六章 总结与展望 | 第67-69页 |
6.1 论文工作总结 | 第67页 |
6.2 未来工作展望 | 第67-69页 |
参考文献 | 第69-71页 |
附录 | 第71-72页 |
致谢 | 第72-73页 |
攻读硕士学位期间发表的学术论文 | 第73页 |