当前位置:主页 > 科技论文 > 软件论文 >

面向相似代码分析的多元化特征提取技术

发布时间:2021-10-30 16:05
  随着计算机的广泛使用及互联网的快速发展,软件系统渗透到日常生活的各个方面。由于代码形式化的语言特点,导致信息之间的抄袭和剽窃现象层出不穷。尤其在面对代码规模量大,迭代多等情况时,仅仅依靠人工检测几乎是无法完成。因此,代码相似性检测技术应运而生。该技术的操作对象主要为程序特征,即能够代表程序内容和含义的基本单元结构。所以程序特征的准确性对检测结果至关重要,其优劣程度将直接影响检测结果的准确性。本文提出了一种面向相似代码分析的多元化特征提取技术,该技术综合考虑了程序的统计属性、结构、执行路径及数据流等因素。从属性计数、结构和功能三个方面进行特征提取,并建立开源程序特征库。本文首先提出了属性计数特征、结构特征和功能特征的定义。然后具体分析了每种特征的特性及模块设计,给出了相应的提取思路。最后基于缺陷检测系统,给出了每种特征提取的相关算法,同时为了提升相似代码分析的效率及存储统一化,提出了特征码的相关概念及生成算法。本文提出的多元化特征提取技术已实现并集成在缺陷检测系统中。通过对5个开源程序实验结果的分析,该方法提取出的特征准确率为84%,符合设计预期,为程序相似性检测提供了更精确、更多元的技... 

【文章来源】:北京邮电大学北京市 211工程院校 教育部直属院校

【文章页数】:76 页

【学位级别】:硕士

【文章目录】:
摘要
ABSTRACT
第一章 绪论
    1.1 研究背景
    1.2 研究现状
        1.2.1 基于词频统计的方法
        1.2.2 基于字符串提取的方法
        1.2.3 基于其他角度的方法
    1.3 研究内容
    1.4 论文章节安排
第二章 问题描述及分析
    2.1 程序修改手段描述
    2.2 属性计数特征
        2.2.1 问题描述
        2.2.2 分析及定义
    2.3 结构特征
        2.3.1 问题描述
        2.3.2 分析及定义
    2.4 功能特征
        2.4.1 问题描述
        2.4.2 分析及定义
    2.5 本章小结
第三章 多元化特征提取系统设计
    3.1 统一中间结构
    3.2 架构设计
    3.3 属性计数模块设计
    3.4 结构特征模块设计
        3.4.1 语句结构特征
        3.4.2 结构化语句块结构特征
        3.4.3 函数结构特征
        3.4.4 文件结构特征
    3.5 功能特征模块设计
        3.5.1 动态点信息符号模型SRP
        3.5.2 变量功能定值函数模型
        3.5.3 功能特征函数模型
    3.6 特征码模块设计
    3.7 本章小结
第四章 多元化特征提取系统实现
    4.1 中间结构架构关系
    4.2 属性计数模块实现
        4.2.1 属性计数特征生成
    4.3 结构特征模块实现
        4.3.1 语句结构特征生成
        4.3.2 结构化语句块结构特征生成
        4.3.3 函数结构特征生成
        4.3.4 文件结构特征生成
    4.4 功能特征模块实现
        4.4.1 动态点信息SRP的生成
        4.4.2 变量功能定值函数的生成
        4.4.3 功能特征函数的生成
        4.4.4 实例分析
    4.5 特征码模块实现
        4.5.1 字符串哈希算法
        4.5.2 特征码的生成
    4.6 本章小结
第五章 实验结果及分析
    5.1 实验环境
    5.2 实验结果及分析
    5.3 本章小结
第六章 总结与展望
    6.1 研究工作总结
    6.2 进一步研究工作
参考文献
致谢
攻读学位期间发表的学术论文目录


【参考文献】:
期刊论文
[1]软件代码测试技术[J]. 金大海,宫云战,王雅文,黄俊飞.  信息通信技术. 2015(03)
[2]基于语法树的程序代码复制检测方法及其评价机制的研究[J]. 张丽萍,刘东升,李彦臣.  内蒙古大学学报(自然科学版). 2010(05)
[3]代码相似性检测技术:研究综述[J]. 熊浩,晏海华,郭涛,黄永刚,郝永乐,李舟军.  计算机科学. 2010(08)
[4]一种基于BP神经网络的代码相似性检测方法[J]. 熊浩,晏海华,黄永刚,郭涛,李舟军.  计算机科学. 2010(03)
[5]程序代码相似度度量的研究与实现[J]. 于海英.  计算机工程. 2010(04)
[6]静态测试C++中定义未使用的变量[J]. 徐希炜.  电脑编程技巧与维护. 2009(16)
[7]基于聚类的特征选择方法[J]. 蒋盛益,郑琪,张倩生.  电子学报. 2008(S1)
[8]基于编译优化和反汇编的程序相似性检测方法[J]. 赵长海,晏海华,金茂忠.  北京航空航天大学学报. 2008(06)
[9]程序代码相似度自动度量技术研究综述[J]. 程金宏,刘东升.  内蒙古师范大学学报(自然科学汉文版). 2006(04)
[10]自然语言文档复制检测研究综述[J]. 鲍军鹏,沈钧毅,刘晓东,宋擒豹.  软件学报. 2003(10)

硕士论文
[1]程序代码相似度检测方法研究及应用[D]. 胡正军.中南大学 2012
[2]基于结构信息和token比对的软件同源性检测技术研究[D]. 韩丽芳.北京邮电大学 2011
[3]基于抽象语法树的程序代码抄袭检测技术研究[D]. 赵彦博.内蒙古师范大学 2010
[4]程序代码复制检测中特征串提取技术研究[D]. 侯敏.内蒙古师范大学 2009
[5]程序代码相似度度量研究[D]. 程金宏.内蒙古师范大学 2007
[6]一种用于软件作业评判系统的程序结构分析算法的设计与实现[D]. 王继远.北京邮电大学 2007



本文编号:3467022

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3467022.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户c7f0e***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com