论文摘要
随着计算机产业的不断发展,计算机软件所带来的巨大经济效益和社会效率,使得软件的价值越来越被人们所重视。如何保护软件的知识产权,维护软件开发者的合法权益,是值得研究的问题。源代码同源性鉴别技术能够为软件的知识产权提供很好的凭证。所谓源代码同源性鉴别是指比较两个或多个软件系统的源代码,找出它们的相同或相似之处,为软件知识产权提供有力的证据。目前,源代码同源性鉴别技术主要分为两大类,一类是源代码文本层面的鉴别技术,另一类是源代码语法结构层面的鉴别技术。基于文本的鉴别技术,其原理是比较源文件的字符,从而得到源文件的相似度,该技术实现简单,针对低级的代码抄袭手段,检测效果良好,已有很多成熟的工具。基于语法结构的鉴别技术,其思想是将源代码的语法结构抽象为语法树,通过比较语法树得到源文件的相似度,是一种深层次的鉴别技术,能够检测出比较复杂的代码抄袭,但由于其实现复杂,目前可利用工具较少。同源性的综合度量是一个比较新的领域,如何有效合理地综合利用多种同源性鉴别技术的分析结果是值得研究的课题。综合评价的技术分为定量和定性两种,都有各自适用的场景。本文在充分的理论研究和大量的实验基础上,设计了一种源代码同源性鉴别系统。该系统实现了基于文本和基于抽象语法树这两个层次的同源性鉴别,并提出利用多元线性回归分析和层次分析两种综合度量算法,从定量和定性角度,对两种同源性鉴别技术的分析结果进行综合度量,使得鉴别结果更加完善。
论文目录
摘要ABSTRACT第一章 绪论1.1 研究背景及意义1.2 国内外发展状况1.3 论文结构安排第二章 源代码同源性鉴别理论与工具2.1 源代码同源性鉴别技术概述2.1.1 基于文本的鉴别技术2.1.2 基于抽象语法树的鉴别技术2.2 源代码同源性鉴别工具2.3 综合度量算法2.3.1 定量分析法2.3.2 定性分析法2.4 本章小结第三章 结合文本和抽象语法树比对的源代码同源性鉴别系统总体设计3.1 源代码同源性鉴别系统结构图3.2 主体模块设计3.2.1 文本比对模块3.2.2 语法比对模块3.2.3 数据库存储模块3.2.4 同源性综合度量模块3.3 源代码同源性系统综合度量算法3.3.1 多元线性回归分析3.3.2 层次分析法3.4 本章小结第四章 结合文本和抽象语法树比对的源代码同源性鉴别系统详细设计4.1 文本比对模块4.1.1 文本比对模块流程图4.1.2 文本比对模块实施方案4.2 语法比对模块4.2.1 语法比对模块流程图4.2.2 语法比对模块实施方案4.3 数据库存储模块4.4 综合度量模块4.4.1 线性回归算法设计4.4.2 层次分析算法设计4.5 本章小结第五章 系统实验结果及分析5.1 实验描述5.2 结果分析5.2.1 多元线性回归计算5.2.2 层次分析法计算5.3 本章小结第六章 总结与展望6.1 论文工作总结6.2 下一步研究方向参考文献致谢攻读硕士学位期间研究成果
相关论文文献
标签:源代码同源性论文; 文本比对论文; 抽象语法树论文;
结合文本和抽象语法树比对的源代码同源性鉴别系统的研究与设计
下载Doc文档