一种代码抄袭检测方法技术

技术编号:41739204 阅读:19 留言:0更新日期:2024-06-19 12:58
本发明专利技术公开了一种代码抄袭检测方法,用密码子把程序代码的关键字编码为伪基因序列,用BLAST把伪基因序列建库,利用BLASTN,BLASTP或BLASTX方法作相似性比对,根据比对结果作图,可视化的输出结果。本发明专利技术选择特征点为,用密码子把程序代码的关键字编码为伪基因序列,用BLAST建库,这样数据库可以建得很大,且BLASTN,BLASTP或BLASTX方法现已非常成熟。

【技术实现步骤摘要】

本专利技术涉及一种代码抄袭检测方法


技术介绍

1、现有的抄袭检测系统判断程序或文档抄袭的依据在于比较程序或文档的相似性,程序或文档越相似说明抄袭的可能性越大,相似性量化后的结果就是相似度。一般来说,相似度的值越大说明抄袭的可能性越大。得到相似度的过程就是实现以下各功能的过程:首先将程序代码转换成能够描述程序特征的标记串,之后对转换的标记串进行匹配,找出相似的部分。最后确定一个合适的公式用于计算匹配结果,以得到相似度的值。可以应用串匹配算法实现对标记序列的匹配查找,然后使用某一公式计算出相似度的值。程序代码抄袭检测大部分集中在结构度量法上,该方法主要分为标记串的生成和标记串相似度计算两个部分,由于是通过计算标记串间的相似度来间接获得程序代码间的相似度,因此标记串所携带的结构信息与程序代码结构的吻合程度,决定了算法最终计算结果的精确度,同时标记串的规模对系统计算的速度有着很大的影响,然而,目前已有的技术无论在速度和精度方面都有所欠缺。


技术实现思路

1、本专利技术所解决的技术问题提供一种建库大、计算量小、耗时短本文档来自技高网...

【技术保护点】

1.一种代码抄袭检测方法,其特征在于,包括以下步骤:

2.按权利要求1所述的代码抄袭检测方法,其特征在于,所述第一步提取关键字的方法为:定义各个语言的关键字集合,包括Shell,Perl,C,HTML,JAVA,JavaScript,PHP语言,每个关键字对应一个密码子。

3.按权利要求1所述的代码抄袭检测方法,其特征在于,建立一个哈希表(键/值:文件名/程序语言),用密码子编码程序语言及代码关键字,把其编码成伪基因序列。

4.按权利要求1所述的代码抄袭检测方法,其特征在于,用BLAST建库,其数据库可以很大,BLAST可处理任何数量的序列,包括蛋白序...

【技术特征摘要】

1.一种代码抄袭检测方法,其特征在于,包括以下步骤:

2.按权利要求1所述的代码抄袭检测方法,其特征在于,所述第一步提取关键字的方法为:定义各个语言的关键字集合,包括shell,perl,c,html,java,javascript,php语言,每个关键字对应一个密码子。

3.按权利要求1所述的代码抄袭检测方法,其特征在于,建立...

【专利技术属性】
技术研发人员:解增言吴国峰舒坤贤袁帅
申请(专利权)人:重庆邮电大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1