[发明专利]一种混源软件中开源成分检测的方法和系统有效
申请号: | 202111286072.3 | 申请日: | 2021-11-02 |
公开(公告)号: | CN113721978B | 公开(公告)日: | 2022-02-11 |
发明(设计)人: | 张涛;陈钟 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F8/77 | 分类号: | G06F8/77 |
代理公司: | 北京万象新悦知识产权代理有限公司 11360 | 代理人: | 贾晓玲 |
地址: | 100871*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 软件 中开源 成分 检测 方法 系统 | ||
1.一种混源软件中开源成分检测的方法,其特征在于,该方法包括:
获取第一源码文件;所述第一源码文件,是指目标混源软件中的源码文件;
根据第一源码文件的大小分别对所述第一源码文件执行相应的同源分析;
其中,对于大小超过第一阈值的第一源码文件,基于Simhash算法对其进行同源分析:
定义一个Simhash函数
对于大小不超过第一阈值的第一源码文件,基于Minhash算法对其进行同源分析:
获取第三源码文件;根据所述第一源码文件、第三源码文件的代码生成所述第一源码文件、第三源码文件的签名集合,并据此构建所述签名集合的特征矩阵;定义一个Minhash函数
其中,所述第二源码文件,是指源码库中大小超过第一阈值的源码文件;所述第三源码文件,是指源码库中大小不超过第一阈值的源码文件;所述的源码库,是指收集源码文件、并分类存储所述收集的源码文件而生成的源代码仓库;所述的Simhash函数
2.根据权利要求1所述的方法,其特征在于,
基于所述第一Simhash值与指纹库中的第二Simhash值的匹配来确定所述第一源码文件是否与所述第二Simhash值所对应的源码文件同源,包括:分别计算所述第一Simhash值与指纹库中的各个第二Simhash值之间的海明距离,来判断所述第一源码文件与所述第二Simhash值对应的源码文件之间的相似程度,并据此判断二者是否同源。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111286072.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种地衣芽孢杆菌及其应用
- 下一篇:一种多自由度无人机动力测试装置