基于关系数据库的程序逆向分析架构研究

基于关系数据库的程序逆向分析架构研究

论文摘要

逆向工程从可运行的程序系统出发,生成对应的源程序、系统结构以及相关设计原理和算法思想的文档等。它具有重大现实意义和经济价值,不但可以避免重复劳动,提高软件生产的效率和质量,而且可以将大量的遗产系统转化为易演化系统,从而充分有效地利用这些有用资产。虽然近年对软件逆向工程的研究己有不少,但是它仍然属于一个未充分发展的领域,并未形成统一的标准、方法和过程,因此很有必要进行深入研究。逆向工程适用于软件生存周期的各个阶段和各种抽象层次,包括需求、设计和实现。它可用于低级的抽象层次,例如把程序二进制代码转换为源代码。但主要用于将程序源代码转换为更高抽象层次的表示,如控制流图、数据流图和类关系图等。一般将逆向工程定义为包含两个步骤的过程:第一步分析目标系统,标识系统对象及其关系;第二步创建不同形式或更高抽象层次的系统表示。本文从理论、方法和应用三方面对软件逆向工程中的若干问题进行了研究,着眼于探索逆向工程中信息收集、信息抽取和信息抽象表示的理论和方法,探讨基于关系数据库的程序逆向分析架构的设计。本文的主要工作包括:1.介绍逆向工程的定义、相关概念,以及现有的一些逆向工程工具,综述了逆向工程分析技术的研究进展。2.提出了一种基于关系数据库的程序逆向分析架构。架构以关系模型理论为基础,将程序语言中的各种组件看作一个个各自独立并与其它组件有联系的实体,并采用将实体间关系包含在其属性中的方法,用关系数据库存储程序信息。在架构上应用程序理解和分析技术从扩展的源程序中提取程序信息,将信息存储于关系数据库中,并开发数据库应用程序对信息进行说明或可视化地显示,从而帮助用户快速地理解软件。3.以C语言源程序的逆向分析为例,对架构设计作了相应诠释。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 前言
  • 1.1 研究背景
  • 1.2 研究意义
  • 1.3 国内外研究现状
  • 1.4 研究的主要内容
  • 1.5 论文结构
  • 1.6 小结
  • 第二章 逆向工程概述
  • 2.1 逆向工程的定义及相关概念
  • 2.2 逆向工程的规范活动
  • 2.3 逆向工程中的程序理解
  • 2.3.1 程序理解的定义
  • 2.3.2 程序理解的任务
  • 2.3.3 程序理解的困难
  • 2.3.4 程序理解方法的分类
  • 2.4 逆向工程辅助工具的研究
  • 2.4.1 开发逆向工程辅助工具的原则
  • 2.4.2 开发自动化的逆向工程工具的困难
  • 2.4.3 未来软件逆向工程辅助工具开发的方向
  • 2.5 小结
  • 第三章 基于关系数据库的程序逆向分析架构的设计
  • 3.1 架构的设计原理
  • 3.2 架构的设计原则
  • 3.3 架构的工作流程
  • 3.4 实体描述
  • 3.5 实体概念关联扩展文法
  • 3.6 语义关联描述
  • 3.7 逆向分析器
  • 3.7.1 词法分析的功能
  • 3.7.2 词法分析的输出
  • 3.7.3 词法分析程序
  • 3.7.4 语法分析的任务
  • 3.7.5 语法分析器的自动生成
  • 3.8 程序信息库
  • 3.9 扩展的源程序
  • 3.10 数据库应用程序
  • 3.11 小结
  • 第四章 C 语言程序逆向分析研究
  • 4.1 C 语言程序逆向分析的目标
  • 4.2 C 语言程序逆向分析的步骤
  • 4.2.1 C 语言实体描述
  • 4.2.2 C 语言实体概念关联及文法扩展
  • 4.2.3 语义关联描述
  • 4.2.4 C 语言词法分析器的构造
  • 4.2.5 C 语言语法分析器的构造
  • 4.2.6 程序信息库的设计
  • 4.2.7 信息库的简单应用
  • 4.3 数据库应用程序
  • 4.4 程序逆向分析示例
  • 4.5 小结
  • 结束语
  • 参考文献
  • 致谢
  • 附录A 攻读学位期间发表论文
  • 附录B C 语言词法LEX 程序
  • 附录C C 语言语法YACC 程序
  • 详细摘要
  • 相关论文文献

    • [1].基于非关系数据库的全球时空大数据组织管理研究[J]. 地理信息世界 2019(06)
    • [2].基于关系数据库的OLAP研究[J]. 信息与电脑(理论版) 2016(01)
    • [3].关系数据库向文档数据库的模式转换算法[J]. 现代计算机(专业版) 2016(18)
    • [4].粗糙关系数据库的数学基础[J]. 计算机工程与应用 2015(14)
    • [5].关系数据库的实体间关系提取方法的研究[J]. 计算机应用与软件 2019(10)
    • [6].“教、学、做一体化”在“关系数据库”课程中的应用[J]. 学习月刊 2010(15)
    • [7].基于元数据的关系数据库语义集成方法[J]. 计算机工程 2008(06)
    • [8].模糊关系数据库及应用探讨[J]. 科技传播 2011(15)
    • [9].粗糙关系数据库及其发展[J]. 重庆邮电大学学报(自然科学版) 2009(04)
    • [10].基于关系数据库的持久化技术研究[J]. 科技创新导报 2008(27)
    • [11].关系数据库设计原则分析[J]. 数字通信世界 2018(04)
    • [12].关于关系数据库技术运用于计算机网络设计的研究[J]. 数字通信世界 2017(04)
    • [13].基于相似度的粗关系数据库的近似查询[J]. 计算机工程与应用 2008(21)
    • [14].浅析关系数据库的查询优化[J]. 数字技术与应用 2017(07)
    • [15].异构关系数据库移植平台的设计[J]. 现代计算机(专业版) 2014(34)
    • [16].逐级扩展的非关系数据库分布策略[J]. 信息工程大学学报 2013(04)
    • [17].基于关系数据库语义解析的信息推理研究[J]. 科学技术与工程 2010(33)
    • [18].基于关系数据库语义解析的信息推理研究[J]. 黑龙江科学 2010(06)
    • [19].统一多维数据模型的后关系数据库体系结构[J]. 计算机工程与应用 2009(08)
    • [20].一种粗关系数据库索引方法[J]. 计算机工程 2008(22)
    • [21].面向对象在关系数据库中的设计与应用[J]. 电脑知识与技术 2016(20)
    • [22].基于关系数据库的应急预案领域本体构建研究[J]. 微计算机应用 2010(01)
    • [23].关系数据库原理及其在计算机网络设计中的应用优势[J]. 科技创新导报 2018(35)
    • [24].后关系数据库在新型电子商务中的应用研究[J]. 中国高新技术企业 2010(16)
    • [25].基于规则的关系数据库到本体的转换方法[J]. 计算机应用研究 2008(03)
    • [26].基于多维云模型的关系数据库数字水印算法[J]. 佳木斯大学学报(自然科学版) 2008(03)
    • [27].基于关系数据库的蒙文局部本体构建及整合[J]. 北京工业大学学报 2014(11)
    • [28].粗糙关系数据库的度量[J]. 计算机科学 2012(12)
    • [29].综合监控系统多关系数据库同步组件设计[J]. 城市轨道交通研究 2012(11)
    • [30].关系数据库的模式抽取[J]. 现代计算机(专业版) 2009(04)

    标签:;  ;  ;  ;  ;  

    基于关系数据库的程序逆向分析架构研究
    下载Doc文档

    猜你喜欢