[发明专利]一种混源软件中开源成分检测的方法和系统有效

专利信息
申请号: 202111286072.3 申请日: 2021-11-02
公开(公告)号: CN113721978B 公开(公告)日: 2022-02-11
发明(设计)人: 张涛;陈钟 申请(专利权)人: 北京大学
主分类号: G06F8/77 分类号: G06F8/77
代理公司: 北京万象新悦知识产权代理有限公司 11360 代理人: 贾晓玲
地址: 100871*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 软件 中开源 成分 检测 方法 系统
【说明书】:

本申请公开的实施例提供了一种混源软件中开源成分检测的方法和系统。其中,该方法包括:获取目标混源软件中的源码文件,即获取第一源码文件,以及对所述第一源码文件分类及执行相应的同源分析;其中,对于所述第一源码文件中大小超过第一阈值的源码文件,基于Simhash算法对其进行同源分析;对于所述第一源码文件中大小不超过第一阈值的源码文件,基于Minhash算法对其进行同源分析。较之现有技术,上述方案能够均衡混源软件开源成分检测的效率需求和精确性间的矛盾,在保证检测效率的前提下获得可接受的开源成分检测结果。

技术领域

本申请公开的实施例主要涉及开源治理相关技术领域以及具体涉及软件成分分析(SCA)安全测试细分技术领域,且更具体地,涉及一种混源软件中开源成分检测的方法和系统。

背景技术

近年来,软件开发中开源成分使用比例越来越高。开源成分的引入,能够大大提高软件开发的效率。如今,几乎所有的软件开发者实体都会选择使用开源框架、开源库、开源组件等,以简化开发过程、缩短开发周期。然而引入开源成分,不免可能引入一些漏洞,造成安全问题,以及知识产权合规问题。特别是直接拷贝开源代码文件复用或仅做简单修改即引入,都不免因为开源内容被广泛、频繁地公开使用而成为攻击者优先攻击的目标。

目前,虽然已经有很多SCA工具支持开源成分的分析,但是这些工具大都是基于项目的特征文件来分析项目的开源成分,而基于代码的开源成分分析则很少,主要是因为基于海量的开源代码进行开源成分的分析难度大,检测效率不能达到预期。

发明内容

根据本申请公开的实施例,提供了一种混源软件中开源成分检测的方法和系统,以实现代码粒度的开源成分检测,并且能够在保证检测效率的前提下取得在广义的代码粒度上的、可接受的开源成分检测结果。

在本公开的第一方面中,提供了一种混源软件中开源成分检测的方法。该方法包括:获取目标混源软件中的源码文件,作为第一源码文件;根据所述第一源码文件的大小分别对所述第一源码文件执行相应的同源分析;其中,对于所述第一源码文件中大小超过第一阈值的源码文件,基于Simhash算法对其进行同源分析;而对于所述第一源码文件中大小不超过第一阈值的源码文件,基于Minhash算法对其进行同源分析;而具体地,上述的基于Simhash算法的同源分析,可以是包括:定义一个Simhash函数h1,基于待检测的大小超过第一阈值的第一源码文件的代码生成所述第一源码文件的第一Simhash值,以及将所述第一Simhash值与指纹库中的第二Simhash值逐一进行匹配分析,确定所述第一源码文件是否与指纹库中的第二Simhash值所对应的源码文件同源;而上述的第二Simhash值,则是指根据源码库中的第二源码文件的代码基于Simhash函数h1分别生成并存储于指纹库的Simhash值;上述的基于Minhash算法的同源分析,可以是包括:获取源码库中的第三源码文件;以及根据待检测的大小不超过第一阈值的第一源码文件和获取的第三源码文件的代码,分别生成所述第一源码文件、第三源码文件对应的签名集合,并据此构建所述签名集合的特征矩阵;并且定义一个Minhash函数h2,基于所述特征矩阵和Minhash函数h2估算所述第一源码文件与第三源码文件的签名集合间的Jaccard相似度,确定所述第一源码文件是否与第三源码文件中的某个或某几个同源;其中,上述的源码库,是指收集源码文件、并分类存储所述收集的源码文件而生成的源代码仓库;其中的第二源码文件,是指源码库中大小超过第一阈值的源码文件;第三源码文件,是指源码库中大小不超过第一阈值的源码文件;而同源分析涉及的Simhash函数h1、Minhash函数h2,则可以是指任一的Simhash函数、Minhash函数。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202111286072.3/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top