| 摘要 | 第1-7页 |
| Abstract | 第7-8页 |
| 第一章 前言 | 第8-14页 |
| ·研究背景 | 第8-10页 |
| ·国内外研究现状 | 第10-12页 |
| ·本文研究内容 | 第12-13页 |
| ·本文组织结构 | 第13-14页 |
| 第二章 软件安全与软件保护技术 | 第14-24页 |
| ·逆向工程与软件安全威胁 | 第14-17页 |
| ·软件安全威胁模型 | 第14-15页 |
| ·软件攻击方法 | 第15-16页 |
| ·逆向工程概述 | 第16-17页 |
| ·基于虚拟机的软件保护 | 第17-21页 |
| ·软件保护方法 | 第17-19页 |
| ·虚拟机概述 | 第19-21页 |
| ·软件保护虚拟机 | 第21页 |
| ·软件多样性与软件保护 | 第21-23页 |
| ·软件多样性 | 第21-23页 |
| ·软件保护多样性 | 第23页 |
| ·小结 | 第23-24页 |
| 第三章 软件保护多样性与基于虚拟机的软件保护模型 | 第24-36页 |
| ·软件保护多样性 | 第24-28页 |
| ·多样性介绍 | 第24-25页 |
| ·篡改的诱因 | 第25-26页 |
| ·相关保护措施 | 第26-28页 |
| ·基于多样性的软件保护应用 | 第28-32页 |
| ·信息编码 | 第28-29页 |
| ·隐藏版本间差异 | 第29-30页 |
| ·多版本防篡改 | 第30-32页 |
| ·基于虚拟机的软件保护多样性模型 | 第32-34页 |
| ·模型框架 | 第32-33页 |
| ·指令集设计 | 第33页 |
| ·编译器设计 | 第33-34页 |
| ·解释器设计 | 第34页 |
| ·小结 | 第34-36页 |
| 第四章 基于虚拟机的软件保护多样性系统的设计与实现 | 第36-54页 |
| ·系统设计思路 | 第36-40页 |
| ·虚拟机设计 | 第36-37页 |
| ·虚拟机系统结构 | 第37-39页 |
| ·虚拟机工作流程 | 第39-40页 |
| ·基于多样性的核心算法设计 | 第40-46页 |
| ·DFA指令映射设计 | 第40-43页 |
| ·基于二叉树的指令编码设计 | 第43-46页 |
| ·主要模块设计与实现 | 第46-49页 |
| ·初始化模块 | 第46-47页 |
| ·指令转换模块 | 第47-48页 |
| ·解释执行模块 | 第48-49页 |
| ·实验分析 | 第49-53页 |
| ·实验环境 | 第49页 |
| ·实验介绍 | 第49页 |
| ·多样性分析 | 第49-52页 |
| ·性能分析 | 第52-53页 |
| ·小结 | 第53-54页 |
| 第五章 总结与展望 | 第54-56页 |
| ·总结 | 第54-55页 |
| ·展望 | 第55-56页 |
| 参考文献 | 第56-60页 |
| 攻读硕士学位期间取得的学术成果 | 第60-62页 |
| 致谢 | 第62页 |