基于控制变换的代码混淆技术研究
| 摘要 | 第1-6页 |
| Abstract | 第6-11页 |
| 1 绪论 | 第11-16页 |
| ·研究背景及意义 | 第11页 |
| ·选题依据 | 第11-12页 |
| ·代码混淆技术研究现状 | 第12-14页 |
| ·研究现状 | 第12-13页 |
| ·发展前景 | 第13-14页 |
| ·研究内容 | 第14-15页 |
| ·主要研究内容 | 第14页 |
| ·拟解决的问题 | 第14-15页 |
| ·组织结构 | 第15-16页 |
| 2 逆向工程与代码混淆 | 第16-22页 |
| ·逆向工程技术概述 | 第16-19页 |
| ·静态分析 | 第17-18页 |
| ·动态分析 | 第18-19页 |
| ·代码混淆技术概述 | 第19-21页 |
| ·代码混淆的定义 | 第19页 |
| ·代码混淆的分类 | 第19-20页 |
| ·代码混淆的有效性评价 | 第20-21页 |
| ·本章小结 | 第21-22页 |
| 3 代码控制流混淆变换 | 第22-31页 |
| ·控制流混淆的概念 | 第22页 |
| ·常用控制流混淆变换方法 | 第22-30页 |
| ·使用垃圾代码 | 第22页 |
| ·使用不透明谓词 | 第22-23页 |
| ·插入多余的控制流 | 第23-25页 |
| ·平展控制流结构 | 第25-28页 |
| ·扩展分支跳转 | 第28-30页 |
| ·本章小结 | 第30-31页 |
| 4 分存技术实现代码控制流混淆研究 | 第31-43页 |
| ·引言 | 第31页 |
| ·分存技术 | 第31-32页 |
| ·软件注册验证机制 | 第32-38页 |
| ·注册码验证的流程 | 第33-34页 |
| ·密钥分存 | 第34-36页 |
| ·验证函数的构造 | 第36-38页 |
| ·分存技术在代码控制流混淆中的应用 | 第38-42页 |
| ·验证函数与不透明谓词的结合 | 第39-40页 |
| ·验证函数与分支函数的结合 | 第40-42页 |
| ·本章小结 | 第42-43页 |
| 5 基于分存策略的软件保护博弈模型研究 | 第43-54页 |
| ·引言 | 第43页 |
| ·博弈论的相关概念 | 第43-45页 |
| ·基于分存策略的软件保护博弈模型 | 第45-53页 |
| ·软件保护的攻击防守思想 | 第45-46页 |
| ·模型的建立 | 第46-47页 |
| ·模型的理论分析与验证 | 第47-53页 |
| ·本章小结 | 第53-54页 |
| 6 实验验证与性能分析 | 第54-61页 |
| ·引言 | 第54页 |
| ·混淆强度 | 第54-56页 |
| ·抗攻击能力 | 第56-60页 |
| ·混淆变换代价 | 第60页 |
| ·隐蔽性 | 第60页 |
| ·本章小结 | 第60-61页 |
| 7 总结与展望 | 第61-63页 |
| ·全文总结 | 第61-62页 |
| ·不足及展望 | 第62-63页 |
| 参考文献 | 第63-67页 |
| 攻读硕士学位期间所取得的研究成果 | 第67-68页 |
| 致谢 | 第68-69页 |