基于Android平台的软件保护方案的研究与实现
| 摘要 | 第1-6页 |
| ABSTRACT | 第6-11页 |
| 第一章 绪论 | 第11-16页 |
| ·研究背景 | 第11-12页 |
| ·研究现状 | 第12-14页 |
| ·论文主要工作 | 第14-15页 |
| ·论文组织结构 | 第15-16页 |
| 第二章 ANDROID开发介绍 | 第16-33页 |
| ·Android体系介绍 | 第16-21页 |
| ·Android体系结构 | 第16-17页 |
| ·从MVC模式看Android结构 | 第17-18页 |
| ·Dalvik虚拟器介绍 | 第18-19页 |
| ·Android工程的编译过程 | 第19-21页 |
| ·小结 | 第21页 |
| ·Android的安全模型 | 第21-24页 |
| ·permission安全机制 | 第21-22页 |
| ·沙箱机制 | 第22-23页 |
| ·数字签名机制 | 第23-24页 |
| ·小结 | 第24页 |
| ·Android应用面临的攻击 | 第24-33页 |
| ·传统的软件攻击方式 | 第24-26页 |
| ·Android面临的安全风险和攻击 | 第26-28页 |
| ·攻击apk实例操作 | 第28-32页 |
| ·小结 | 第32-33页 |
| 第三章 重要算法的研究与应用 | 第33-51页 |
| ·分组对称加密AES | 第33-34页 |
| ·DES | 第34-35页 |
| ·消息摘要MD5 | 第35-36页 |
| ·带密钥的哈希摘要HMAC | 第36-37页 |
| ·白盒密码 | 第37-49页 |
| ·基本概念介绍 | 第39-42页 |
| ·白盒密码的设计机制 | 第42-44页 |
| ·白盒AES密码的设计与实现 | 第44-48页 |
| ·白盒AES密码执行效率分析 | 第48-49页 |
| ·白盒AES安全性分析 | 第49页 |
| ·小结 | 第49-51页 |
| 第四章 软件保护方案设计与实现 | 第51-71页 |
| ·软件保护方案设计 | 第51-54页 |
| ·软件保护方案思想 | 第51-52页 |
| ·软件保护方案设计 | 第52-54页 |
| ·动态加载dex | 第54-58页 |
| ·为何需要JNI进行动态加载 | 第55-56页 |
| ·JNI与NDK | 第56页 |
| ·动态加载实现机制 | 第56-57页 |
| ·使用JNI动态加载C实现 | 第57-58页 |
| ·混淆 | 第58-61页 |
| ·混淆的意义 | 第58-59页 |
| ·使用ProGuard进行代码混淆 | 第59-61页 |
| ·反调试 | 第61-64页 |
| ·反调试方法 | 第61-63页 |
| ·动态反调试的应用 | 第63-64页 |
| ·完整性校验保护机制 | 第64-70页 |
| ·当前软件防篡改技术 | 第65页 |
| ·软件防篡改的关键支撑技术 | 第65-66页 |
| ·加密自检测防篡改技术方案设计和实现 | 第66-70页 |
| ·小结 | 第70-71页 |
| 第五章 系统分析与评估 | 第71-76页 |
| ·抗攻击性 | 第71-72页 |
| ·完整性 | 第72页 |
| ·性能分析 | 第72-75页 |
| ·小结 | 第75-76页 |
| 第六章 结束语 | 第76-78页 |
| ·论文工作总结 | 第76-77页 |
| ·问题和展望 | 第77-78页 |
| 参考文献 | 第78-80页 |
| 致谢 | 第80-81页 |
| 攻读学位期间发表的学术论文 | 第81页 |