C++逆编译中模板库函数识别研究
| 摘要 | 第1-4页 |
| Abstract | 第4-8页 |
| 第1章 绪论 | 第8-20页 |
| ·引言 | 第8-9页 |
| ·研究历史及现状 | 第9-14页 |
| ·编译与逆编译 | 第9-10页 |
| ·逆编译的起源简介 | 第10页 |
| ·阻碍:合法性的讨论 | 第10-11页 |
| ·新局面的出现 | 第11-12页 |
| ·国内研究情况简介 | 第12-13页 |
| ·研究现状 | 第13-14页 |
| ·相关领域与作用 | 第14-17页 |
| ·软件逆向工程 | 第14-15页 |
| ·程序理解 | 第15-16页 |
| ·软件维护与重用 | 第16页 |
| ·硬件自动进化 | 第16-17页 |
| ·自动化验证 | 第17页 |
| ·逆编译器模型与研究方法 | 第17-19页 |
| ·基于文法的逆编译器 | 第18页 |
| ·基于模式的逆编译器 | 第18页 |
| ·基于生成编译器的逻辑设计逆编译器 | 第18页 |
| ·基于知识的逆编译器 | 第18-19页 |
| ·逆编译器的编译器 | 第19页 |
| ·本章小结 | 第19-20页 |
| 第2章 C++的逆编译器模型 | 第20-31页 |
| ·引言 | 第20页 |
| ·逆编译系统构成 | 第20页 |
| ·C++语言介绍 | 第20-21页 |
| ·设计C++逆编译系统 | 第21-30页 |
| ·库函数 | 第22-23页 |
| ·普通类 | 第23-25页 |
| ·内存的分配与释放 | 第25-26页 |
| ·继承 | 第26页 |
| ·多态 | 第26-28页 |
| ·异常 | 第28-29页 |
| ·模板 | 第29-30页 |
| ·本文研究内容 | 第30页 |
| ·本章小结 | 第30-31页 |
| 第3章 C++系统库函数识别 | 第31-51页 |
| ·引言 | 第31-33页 |
| ·讨论背景与环境 | 第31-32页 |
| ·C++中模板概念简介 | 第32页 |
| ·识别C++库函数的意义 | 第32-33页 |
| ·技术特点 | 第33-37页 |
| ·C++库函数构成特点 | 第33-34页 |
| ·模板化库函数的识别难点 | 第34-37页 |
| ·库函数的特征识别法 | 第37-41页 |
| ·传统特征识别法简介 | 第37页 |
| ·新的难点 | 第37-39页 |
| ·难点分析 | 第39-41页 |
| ·改进特征识别法 | 第41-42页 |
| ·算法描述 | 第42-44页 |
| ·特征采集算法 | 第42-43页 |
| ·库函数识别算法 | 第43-44页 |
| ·实际应用 | 第44-49页 |
| ·训练 | 第44-45页 |
| ·目标程序 | 第45页 |
| ·识别结果 | 第45-46页 |
| ·正确性验证 | 第46-48页 |
| ·实验数据与统计 | 第48-49页 |
| ·本章小结 | 第49-51页 |
| 第4章 C++库函数模板识别 | 第51-73页 |
| ·引言 | 第51-53页 |
| ·识别目标是函数实体带来的问题 | 第51-52页 |
| ·改换识别目标 | 第52-53页 |
| ·识别C++库函数模板 | 第53-58页 |
| ·库函数的模板特征 | 第53-56页 |
| ·从实体样本归纳特征 | 第56页 |
| ·归纳特征和评价策略 | 第56-57页 |
| ·问题的等价映射 | 第57-58页 |
| ·搜索的优化 | 第58页 |
| ·相关形式化定义 | 第58-61页 |
| ·串的原始最佳匹配定义 | 第59页 |
| ·扩展的最佳匹配定义 | 第59-61页 |
| ·匹配矩阵 | 第61页 |
| ·相关算法描述 | 第61-65页 |
| ·求解最佳匹配关系算法 | 第62页 |
| ·最细划分匹配矩阵构造算法 | 第62页 |
| ·寻找最长右下行路算法 | 第62-63页 |
| ·匹配结果构造算法 | 第63-64页 |
| ·特征训练算法 | 第64-65页 |
| ·特征更新算法 | 第65页 |
| ·特征匹配算法 | 第65页 |
| ·实际应用 | 第65-71页 |
| ·训练样本代码 | 第66页 |
| ·识别所需特征 | 第66-67页 |
| ·匹配结果 | 第67-68页 |
| ·实验库函数选择 | 第68-69页 |
| ·实验数据与统计 | 第69-71页 |
| ·进一步改进 | 第71页 |
| ·本章小结 | 第71-73页 |
| 第5章 总结 | 第73-78页 |
| ·本文工作内容 | 第73-74页 |
| ·逆编译领域存在的问题 | 第74-75页 |
| ·落后于编译器的变化速度 | 第74页 |
| ·落后于编程语言的进化速度 | 第74页 |
| ·应用范围过窄 | 第74-75页 |
| ·进一步的工作 | 第75-77页 |
| ·通用性的方法 | 第75页 |
| ·用户类型识别 | 第75-76页 |
| ·类型间关系的识别 | 第76页 |
| ·用户模板的识别 | 第76-77页 |
| ·结束语 | 第77-78页 |
| 参考文献 | 第78-83页 |
| 致谢 | 第83-84页 |
| 攻读硕士期间发表论文情况 | 第84页 |
| 攻读硕士期间参加课题项目 | 第84-85页 |
| 作者简历 | 第85页 |