【技术实现步骤摘要】
基于静态胎记的软件抄袭检测方法
本专利技术涉及程序特征发现以及软件版权保护领域,对两个不同开发者发布的程序通过提取其静态胎记进行对比计算其发布程序之间相似度大小,以判断两程序之间是否存在抄袭现象,是一种软件抄袭检测的方法;
技术介绍
伴随着计算机技术以及计算机网络的迅猛发展,软件已经成为我们日常生活中不可或缺的一部分,并且为人们的生活带来了极大的便利以及数以亿万记的经济效益;然而软件作为一种数字产品在有着传输便利性的同时也为其版权保护带来了相当的难度,许多别有用心的人可以轻易地在网络上获得目标软件并且通过一些技术手段来将其破解并且以低廉的价格再发行出去,为软件的开发者带来重大损失;在这种现状之下,许多相关学者以及工作人员已经在做有关软件保护的研究,思路大致可以说从软件和硬件两方面来对程序进行加密和保护;若从硬件方面来进行保护,主流有三种手段,一是将程序写入可携带设备,如光盘或加密狗等等,由人对硬件进行保管;二是将程序绑定于CPU之上,一个CPU唯一对应于一个程序,这种方法对于CPU的制造有一定的要求;三是在CPU中增加一个解密单元,对于要执行的程序预先进行加密,只 ...
【技术保护点】
1.一种基于静态胎记的软件抄袭检测方法,其特征在于包括以下步骤:(1)由用户指定源工程PA和PA中的源类A以及可疑工程PB和PB中的可疑类B,再选定迭代深度d{d≥0};(2)静态分析A,B编译后得到的中间文件classA和classB,将A中所记录的nA个方法的信息
【技术特征摘要】
2018.01.16 CN 20181004079421.一种基于静态胎记的软件抄袭检测方法,其特征在于包括以下步骤:(1)由用户指定源工程PA和PA中的源类A以及可疑工程PB和PB中的可疑类B,再选定迭代深度d{d≥0};(2)静态分析A,B编译后得到的中间文件classA和classB,将A中所记录的nA个方法的信息结构化的存储在中,同时将A中所有API调用的字面量存储在中;将B中所记录的nB个方法的信息结构化的存储在中,同时将B中所有API调用的字面量存储在中;分别比较和和得到类在API调用方面的相似度simAPI和类在指令序列比较方面的相似度simins,比较步骤如下:①.统计包含的类调用数目,记为m1,包含的类调用数目,记为m2,其中相同的类调用数目m1∩m2,和中所有不重复的类调用数目为m1∪m2,源类A与可疑类B在API调用方面的相似度为②.对和中的每一个方法M实施以下步骤:Ⅰ.遍历M中包含m个有序指令ins1,ins2,...insm,记正在遍历的指令为insj,若insj是一个调用其他方法的指令,且调用的方法是类所在工程P中存在的方法,则用该方法的指令序列替代insj。当ins1,ins2,...insm遍历完毕后d=d-1;Ⅱ.重复Ⅰ,直到d=0或M中任意一项的指令序列中都不包含指向工程P中存在的方法的指令时,停止;Ⅲ.将M中每一个指令剥离操作数,生成M在迭代深度为d时的指令序列seq;③.建立矩阵Matrix[nA][nB],其中Matrix[i][j]所存储的值为源类A中第i个方法与可疑类B中第j个方法的相似度,比较两个方法的相似度如下:Ⅰ.记方法M1在迭代深度为d时剥离了操作数的指令序列为se...
【专利技术属性】
技术研发人员:王曙燕,孙家泽,赵鹏飞,
申请(专利权)人:西安邮电大学,
类型:发明
国别省市:陕西,61
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。