【技术实现步骤摘要】
代码匹配分析方法、装置、电子设备及存储介质
[0001]本申请涉及代码分析
,尤其涉及一种代码匹配分析方法、装置、电子设备及存储介质。
技术介绍
[0002]目前,自主研发的信息技术产品已成为我国信息技术产业的重要发展趋势。为了加速自主研发软件的安全化进程,不仅需要减少对非自研软件依赖引入,还需要对代码编制进行检测分析以减少安全隐患,因此需要对自主研发软件进行源码配对检测(如自研率的检测),能够分析出自主研发软件与其他开源组件的源码配对状况,便于软件的开发和维护。
[0003]然而,目前市面上对自主研发软件进行源码配对检测(如自研率的检测)的软件效率较低,不能快速、准确地对大量的开源组件的源码的数据信息进行处理分析、高效,同时匹配计算效率较低。
技术实现思路
[0004]本申请的目的是为解决上述部分技术问题的不足而提供一种代码匹配分析方法、装置、电子设备及存储介质,能够快速、准确对数量较多的代码进行匹配分析,提高检测覆盖率、匹配效率。
[0005]为了实现上述目的,本申请提供了一种代码匹 ...
【技术保护点】
【技术特征摘要】
1.一种代码匹配分析方法,其特征在于,包括:获取源码包,所述源码包包括若干源码文件;解析所述源码包得到对应的所述源码文件,各所述源码文件包括若干行的代码,分别根据各行代码计算出对应的哈希信息,根据所述哈希信息建立对应的目录,对应的所述目录中建立有对应的索引信息,所述索引信息记录有该行代码对应的组件信息和该行代码所处的行号信息;输入待分析包,并计算所述待分析包中各待分析文件的各行代码对应的哈希信息;根据各待分析文件的各行代码对应的所述哈希信息,寻找配对的所述目录,并读取配对的所述目录中所述索引信息;根据配对的各所述目录中所述索引信息对应的所述组件信息和所述行号信息,筛选所述组件信息相对应且所述行号信息连续排布的所述索引信息;根据筛选的所述索引信息确定所述待分析文件对应的匹配状况信息。2.如权利要求1所述的代码匹配分析方法,其特征在于,所述“根据配对的各所述目录中所述索引信息对应的所述组件信息和所述行号信息,筛选所述组件信息相对应且所述行号信息连续排布的所述索引信息”包括:根据筛选的同一所述组件信息下且行号连续排布的所述行号信息对应的所述索引信息,分别获取各所述组件信息对应连续排布的行号数量。3.如权利要求2所述的代码匹配分析方法,其特征在于,所述“获取各所述组件信息对应连续排布的行号数量”包括:根据筛选的所述索引信息中,分别确定同一所述组件信息下,连续排布的所述行号信息的数量,以确定所述行号数量。4.如权利要求2所述的代码匹配分析方法,其特征在于,所述匹配状况信息包括匹配成功和匹配失败;所述“根据筛选的所述索引信息确定所述待分析文件对应的匹配状况信息”包括:将各所述组件信息对应连续排布的行号数量分别与预设判定数值进行比对;若至少一所述行号数量大于预设判定数值,则所述待分析文件对应的匹配状况信息为匹配成功。5.如权利要求1所述的代码匹配分析方法,其特征在于,还包括:所述匹配状况信息包括匹配成功和匹配失败;确定所述待分析包中匹配成功的所述待分析文件的数量;根据匹配成...
【专利技术属性】
技术研发人员:汪杰,万振华,王颉,李华,董燕,
申请(专利权)人:深圳开源互联网安全技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。