基于控制混淆和布局混淆的代码混淆系统
摘要 | 第5-7页 |
Abstract | 第7-8页 |
第1章 绪论 | 第15-21页 |
1.1 研究背景及意义 | 第15-16页 |
1.2 国内外研究现状 | 第16-18页 |
1.3 本文的研究内容 | 第18-19页 |
1.4 本文的组织结构 | 第19-21页 |
第2章 代码混淆技术 | 第21-35页 |
2.1 代码混淆的概念 | 第21-22页 |
2.2 代码混淆的分类 | 第22-30页 |
2.2.1 布局混淆 | 第22-23页 |
2.2.2 数据混淆 | 第23-26页 |
2.2.3 预防性混淆 | 第26页 |
2.2.4 控制混淆 | 第26-30页 |
2.3 代码混淆的评价标准 | 第30-33页 |
2.3.1 强度 | 第31页 |
2.3.2 耐受力 | 第31-32页 |
2.3.3 执行开销 | 第32-33页 |
2.3.4 隐蔽性 | 第33页 |
2.4 本章小结 | 第33-35页 |
第3章 混沌不透明谓词和压扁控制流算法 | 第35-47页 |
3.1 混沌理论 | 第35-36页 |
3.2 混沌映射 | 第36-41页 |
3.2.1 Logistic混沌映射 | 第36-38页 |
3.2.2 En_Logistic混沌映射 | 第38-40页 |
3.2.3 分段Logistic混沌映射 | 第40-41页 |
3.3 混沌不透明谓词 | 第41-44页 |
3.3.1 不透明谓词的定义 | 第41-42页 |
3.3.2 混沌不透明谓词 | 第42-44页 |
3.4 压扁控制流算法 | 第44-46页 |
3.5 本章小结 | 第46-47页 |
第4章 算法设计与实现 | 第47-61页 |
4.1 布局混淆 | 第47-48页 |
4.2 不透明谓词的构造 | 第48-50页 |
4.2.1 基于同余方程的不透明谓词的构造 | 第48-49页 |
4.2.2 N态混沌不透明谓词的构造 | 第49-50页 |
4.3 不透明谓词的插入 | 第50-54页 |
4.3.1 在分支条件判断处插入不透明谓词 | 第50-52页 |
4.3.2 在顺序执行的语句中插入不透明谓词 | 第52-54页 |
4.4 改进的压扁控制流算法 | 第54-55页 |
4.5 算法的实现 | 第55-59页 |
4.5.1 对代码进行控制混淆 | 第55-57页 |
4.5.2 对代码进行布局混淆 | 第57-59页 |
4.6 本章小结 | 第59-61页 |
第5章 实验与分析 | 第61-71页 |
5.1 实验平台与测试用例 | 第61-62页 |
5.2 正确性分析 | 第62-63页 |
5.3 安全性分析 | 第63-64页 |
5.4 不透明谓词的生成算法分析 | 第64-65页 |
5.5 有效性分析 | 第65-70页 |
5.5.1 混淆后代码的执行开销 | 第66-68页 |
5.5.2 混淆后代码的强度 | 第68-69页 |
5.5.3 混淆后代码的隐蔽性 | 第69-70页 |
5.5.4 混淆后代码的耐受力 | 第70页 |
5.6 本章小结 | 第70-71页 |
第6章 总结与展望 | 第71-73页 |
6.1 本文总结 | 第71-72页 |
6.2 后续展望 | 第72-73页 |
参考文献 | 第73-77页 |
致谢 | 第77-79页 |
在读期间发表的学术论文与取得的研究成果 | 第79页 |