CN116756710B - 基于特征标记追踪技术的开源治理方法、系统及电子设备 - Google Patents

基于特征标记追踪技术的开源治理方法、系统及电子设备 Download PDF

Info

Publication number
CN116756710B
CN116756710B CN202311030207.9A CN202311030207A CN116756710B CN 116756710 B CN116756710 B CN 116756710B CN 202311030207 A CN202311030207 A CN 202311030207A CN 116756710 B CN116756710 B CN 116756710B
Authority
CN
China
Prior art keywords
component
open source
state
marking
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311030207.9A
Other languages
English (en)
Other versions
CN116756710A (zh
Inventor
汪杰
万振华
王颉
李华
董燕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Seczone Technology Co Ltd
Original Assignee
Seczone Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seczone Technology Co Ltd filed Critical Seczone Technology Co Ltd
Priority to CN202311030207.9A priority Critical patent/CN116756710B/zh
Publication of CN116756710A publication Critical patent/CN116756710A/zh
Application granted granted Critical
Publication of CN116756710B publication Critical patent/CN116756710B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/16Program or content traceability, e.g. by watermarking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/30Computing systems specially adapted for manufacturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及特征标记追踪技术领域,揭露了一种基于特征标记追踪技术的开源治理方法、系统及电子设备,其中,所述方法包括:提取预先获取的开源组件包中的开源组件标记信息,其中,开源组件标记信息包括源头标记信息、哈希值标记信息及状态标记信息;对开源组件标记信息进行成分检测,得到开源组件状态;根据开源组件标记信息及开源组件状态生成软件物料清单,并对软件物料清单进行可视化展示。本发明可以区分相同开源组件在不同场景下的来源、用途,对开源组件进行有效的识别和管理,从而提高开源组件区分时的准确性以及提高开源组件的管理效率。

Description

基于特征标记追踪技术的开源治理方法、系统及电子设备
技术领域
本发明涉及特征标记追踪技术领域,尤其涉及一种基于特征标记追踪技术的开源治理方法、系统及电子设备。
背景技术
如今开发人员广泛使用开源组件,事实上,据估计,每个应用程序的80%至90%都由开源组件组成,例如,一是Synopsys的研究显示,软件应用程序中使用的第三方组件中有一半已经过时,可能不安全;二是来自Black Duck的报告称,使用开源组件的所有应用程序中,超过60%包含已知的软件漏洞。针对上述情况,项目的组成成分分析(SCA,SoftwareComposition Analysis)技术可以有效的检测项目应用中的第三方开源成分,但是在真实的使用环境中,仅仅检测出第三方组件是无法进行有效的管理和使用,同时面对复杂的软件供应链攻击,也缺乏验证和校验的机制。因此,如何区分相同开源组件在不同场景下的来源、用途,对开源组件进行有效的识别和管理,从而提高区分开源组件来源、用途时的准确性及管理效率成为一个亟待解决的问题。
发明内容
本发明提供一种基于特征标记追踪技术的开源治理方法、系统及电子设备,其主要目的在于解决相关技术中区分开源组件来源、用途时的准确性及管理效率较低的问题。
为实现上述目的,本发明提供的一种基于特征标记追踪技术的开源治理方法,包括:提取预先获取的开源组件包中的开源组件标记信息,其中,开源组件标记信息包括源头标记信息、哈希值标记信息及状态标记信息;对开源组件标记信息进行成分检测,得到开源组件状态;根据开源组件标记信息及开源组件状态生成软件物料清单,并对软件物料清单进行可视化展示。
为了解决上述问题,本发明还提供一种基于特征标记追踪技术的开源治理系统,该系统包括:标记信息提取模块,用于提取预先获取的开源组件包中的开源组件标记信息,其中,开源组件标记信息包括源头标记信息、哈希值标记信息及状态标记信息;信息成分检测模块,用于对开源组件标记信息进行成分检测,得到开源组件状态;清单可视化模块,用于根据开源组件标记信息及开源组件状态生成软件物料清单,并对软件物料清单进行可视化展示。
为了解决上述问题,本发明还提供一种电子设备,电子设备包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的计算机程序,计算机程序被至少一个处理器执行,以使至少一个处理器能够执行上述的基于特征标记追踪技术的开源治理方法。
本发明通过提取开源组件包中的开源组件标记信息,能够有效对开源组件包进行识别及标记,从而提高得到的开源组件标记信息的准确性,进一步加快计算机处理效率;通过对开源组件标记信息进行成分检测,能够准确得到开源组件状态,从而提高状态分析的效率;通过开源组件标记信息及开源组件状态生成软件物料清单,能够提高开源组件包的管理效率并能够准确得到开源组件包对应的组件状态,避免恶意篡改;通过对软件物料清单进行可视化展示,能够更容易发现整个开发过程环节中开源组件包的问题,从而能够及时进行修正并提高了计算机工作的效率。因此本发明提出的基于特征标记追踪技术的开源治理方法、系统及电子设备,可以解决如何区分相同开源组件在不同场景下的来源、用途,对开源组件进行有效的识别和管理,从而提高开源组件区分的准确性及管理效率的问题。
附图说明
图1为本发明一实施例提供的基于特征标记追踪技术的开源治理方法的流程示意图;
图2为本发明一实施例提供的提取预先获取的开源组件包中的开源组件标记信息的流程示意图;
图3为本发明一实施例提供的利用预设的数据标记方法分别对组件来源、组件特征及组件状态进行标记,得到源头标记信息、哈希值标记信息及状态标记信息的流程示意图;
图4为本发明一实施例提供的基于特征标记追踪技术的开源治理系统的功能模块图;
图5为本发明一实施例提供的用于实现所述基于特征标记追踪技术的开源治理方法的电子设备的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
为解决现有技术中提供的基于特征标记追踪技术的开源治理方法所存在的如何区分相同开源组件在不同场景下的来源、用途,对开源组件进行有效的识别和管理,从而提高区分的准确性及管理效率的问题。本发明提供了一种基于特征标记追踪技术的开源治理方法,该方法通过提取开源组件包中的开源组件标记信息,对开源组件标记信息进行成分检测,得到开源组件状态,并根据开源组件标记信息及开源组件状态生成软件物料清单,对软件物料清单进行可视化展示,从而能够提高区分开源组件包的准确性以及提高开源组件包的管理效率。
参照图1所示,为本发明一实施例提供的基于特征标记追踪技术的开源治理方法的流程示意图。在本实施例中,基于特征标记追踪技术的开源治理方法包括:
S1、提取预先获取的开源组件包中的开源组件标记信息,其中,开源组件标记信息包括源头标记信息、哈希值标记信息及状态标记信息。
在一个实施例中,开源组件包指的是通过企业收集开源组件的仓库中提取的组件包,其中,仓库指的是私有库,私有库中的开源组件包的来源包括远程中央仓库中拉取以及从开发人员的本地仓库中提交这两个来源。
请参阅图2所示,在一个实施例中,上述提取预先获取的开源组件包中的开源组件标记信息的步骤,包括:S21、获取开源组件包的组件来源及组件状态,对开源组件包进行特征提取,得到组件特征;S22、利用预设的数据标记方法分别对组件来源、组件特征及组件状态进行标记,得到源头标记信息、哈希值标记信息及状态标记信息;S23、对源头标记信息、哈希值标记信息及状态标记信息进行汇总,得到开源组件标记信息。
在一个实施例中,数据标记方法分为三部分标识,分别是SOURCE、HASH和FLAG,其中,SOURCE代表源头即组件来源,就是哪个阶段生成的这个开源组件包,一般可以中央仓库、本地仓库或者其它环节的,比如直接提交开源组件包到代码构建平台的,虽然这种操作是不合规的,但不排除有这种意外操作的情况;HASH则是这个开源组件包的哈希特征值,代表的是开源组件的自身的特征即组件特征;FLAG则是指开源组件的状态即组件状态;数据标记的方法是通过在开源组件包的配置信息或者包内增加配置信息,将标记特征存进去,最终得到开源组件标记信息。
进一步地,比如中央库下载的开源组件包,开源组件包表示为centerjsodfuow2323h12l12f0,其中,center表示开源组件包对应的SOURCE,rjsodfuow2323h12l12f(组件的HASH的长度根据HASH算法的不同,长度是不一样的,这里只是随机举例)表示开源组件包对应的HASH,0表示开源组件包的FLAG未修改;当开源组件包组件出现漏洞时,又无法通过升级版本解决的时候,可能会直接修改开源组件代码并编译成开源组件包,此时,这个开源组件包的哈希就会变化成为新的哈希,这样就无法定位到开源组件包是原先的开源组件包,从而导致很多信息丢失;因此,为了解决这个问题,利用数据标记方法,将开源组件包表示为localrjsodfuow2323h12l12f12,其中local表示开源组件包对应的SOURCE,rjsodfuow2323h12l12f表示开源组件包对应的哈希,12表示开源组件包的组件状态为经过漏洞修复操作。
在一个实施例中,对开源组件包进行特征提取,得到组件特征,包括:对开源组件包进行三重卷积处理,得到卷积组件特征;对卷积组件特征进行平均池化处理,得到池化组件特征;对池化组件特征进行全连接处理,得到组件特征。
在一个实施例中,可以采用预设的卷积神经网络中的卷积层对应的3×3×3的卷积核对开源组件包进行一次卷积后,再利用两次多个3×3×3的卷积核对开源组件包进行并行双重卷积操作,得到卷积组件特征;利用卷积神经网络的池化层对卷积组件特征进行平均池化操作,即划分区域,将区域内的值利用区域中多个数据的均值作为区域值,从而得到池化后的池化组件特征;利用卷积神经网络的全连接层对池化组件特征进行全连接操作,得到组件特征。
请参阅图3所示,在一个实施例中,上述利用预设的数据标记方法分别对组件来源、组件特征及组件状态进行标记,得到源头标记信息、哈希值标记信息及状态标记信息的步骤,包括:S31、对组件来源进行源头排序,得到源头序列,并利用数据标记方法对源头序列进行信息配置,得到源头配置信息;S32、对源头配置信息及组件来源进行匹配及整合,得到源头标记信息;S33、提取组件特征内的哈希特征值,并利用数据标记方法对哈希特征值进行特征标记,得到哈希值标记信息;S34、利用数据标记方法对组件状态进行状态分类,得到状态标记信息。
在一个实施例中,组件来源包括多个来源位置,可以按照字母的顺序对多个组件来源进行排序,得到源头序列;利用数据标记方法按照源头序列的顺序依次进行信息配置,例如,第一组件来源标记为来源1,将来源1作为目标源头配置信息,对多个目标源头信息进行整合,得到源头配置信息;将源头配置信息与对应的组件来源进行连接,即匹配与整合,得到源头标记信息,例如,开源组件包对应第一组件来源,第一组件来源对应唯一一个源头配置信息,将组件来源+源头配置信息形成二元组形式,得到源头标记信息。
进一步地,每个组件特征都有与之对应的哈希特征值,利用数据标记方法对哈希特征值进行唯一性标记,将组件特征与唯一性标记进行整合,得到哈希值标记信息。
在一个实施例中,利用数据标记方法对组件状态进行状态分类,得到状态标记信息,包括:判断组件状态是否修改过;当组件状态未修改过时,利用数据标记方法将组件状态标记为第一状态标记信息,将第一状态标记信息作为状态标记信息;当组件状态修改过时,利用数据标记方法将组件状态标记为第二状态标记信息;获取组件状态的修改原因,利用数据标记方法根据修改原因对第二状态标记信息进行二次标记,得到状态标记信息。
在一个实施例中,比如一开始从中央库下载的开源组件包,即开源组件包的组件状态为原始状态,即用0表示;当开源组件包修改组件上传,则开源组件包为修改状态,即用1表示;进一步地,由于修改的原因可能是因为漏洞修改,也有可能是组件功能修改的,所以组件状态1又可以细分为组件状态11和组件状态12等,从而得到最终的状态标记特征。
在一个实施例中,提取开源组件包中的开源组件标记信息,能够有效对开源组件包进行识别,从而进一步提高开源组件包的管理效率。
S2、对开源组件标记信息进行成分检测,得到开源组件状态。
在一个实施例中,对开源组件标记信息进行成分检测,得到开源组件状态,包括:对开源组件标记信息及预设的私有库中的组件包进行匹配计算,得到匹配度;根据匹配度从私有库中选取目标开源组件;提取目标开源组件对应的目标组件状态,将目标组件状态作为开源组件状态。
在一个实施例中,可以采用欧式距离或曼哈顿距离计算公式对开源组件标记信息与组件包进行匹配计算,得到匹配度;将匹配度最高的组件包作为目标开源组件;提取目标开源组件对应的开源组件标记信息中的目标组件状态,即开源组件状态。
在一个实施例中,对开源组件标记信息进行成分检测,能够准确识别开源组件以及更加精确得到开源组件状态,避免开源组件状态的修改,导致状态识别的准确性降低。
S3、根据开源组件标记信息及开源组件状态生成软件物料清单,并对软件物料清单进行可视化展示。
在一个实施例中,根据开源组件标记信息及开源组件状态生成软件物料清单,包括:获取开源组件标记信息对应的开发生命周期,基于开发生命周期分别对开源组件标记信息及开源组件状态进行排序,得到信息序列及状态序列;基于信息序列将开源组件标记信息作为行向量,并基于状态序列将开源组件状态作为列向量建立软件物料表格;将多个软件物料表格进行汇总,得到软件物料清单。
在一个实施例中,开发生命周期指的是开源组件标记信息所处的计划(定义)、开发及运行(维护)三个时期;按照开发生命周期的时间顺序依次对开源组件标记信息及开源组件状态进行排序;将所有软件物料表格整合到一个总的表格中,得到软件物料清单。
在一个实施例中,正常的研发体系中代码仓库会从私有库中拉取开源组件包对应的信息,然后提取私有库中开源组件的配置信息或者提取开源组件包本身内部的配置信息,然后把标识信息存入到代码仓库的代码信息中,这样在后续做构建的时候,可以把信息传递到下一个环节。
进一步地,可能存在直接修改开源组件包或者开源组件的信息的情况,因此,可以通过开源组件标记信息及开源组件状态生成SBOM(Software Bill of Materials,软件物料清单),通过软件物料清单就可以很清楚的检测识别出开源组件的状态,指示开源组件是未修改的还是已修改的,以及是在哪个环节修改的,从而完整的记录开源组件包在整个软件开发生命周期中的流转、修改的情况。
在一个实施例中,对软件物料清单进行可视化展示,包括:对软件物料清单进行图像转换,得到物料清单图像;对物料清单图像进行图像增强,得到增强物料清单图像;利用预设的可视化命令对增强物料清单图像进行可视化操作,得到可视化图像并展示。
在一个实施例中,利用预设的图像转换器对软件物料清单进行图像转换,得到物料清单图像;对物料清单图像进行图像灰度变换、直方图修正、图像平滑及图像锐化等图像处理,得到增强物料清单图像,能够使得增强物料清单图像的轮廓清晰、对比分明,从而更加准确显示图像特征;通过可视化的平台利用可视化命令将整个流程中所有开源组件包的状态以图像化的方式呈现出来,当某一个环节的开源组件包对应的信息变更的时候,可视化平台更容易发现整个开发过程环节中开源组件包的问题,方便整个开源治理的工作,并提高开源组件包的管理效率,其中,可视化命令示例性的可以为ctrl+Q。
本发明实施例通过提取开源组件包中的开源组件标记信息,能够有效对开源组件包进行识别及标记,从而提高得到的开源组件标记信息的准确性,进一步加快计算机处理效率;通过对开源组件标记信息进行成分检测,能够准确得到开源组件状态,从而提高状态分析的效率;通过开源组件标记信息及开源组件状态生成软件物料清单,能够提高开源组件包的管理效率并能够准确得到开源组件包对应的组件状态,避免恶意篡改;通过对软件物料清单进行可视化展示,能够更容易发现整个开发过程环节中开源组件包的问题,从而能够及时进行修正并提高了计算机工作的效率。因此本发明提出的基于特征标记追踪技术的开源治理方法,可以解决如何区分相同开源组件在不同场景下的来源、用途,对开源组件进行有效的识别和管理,从而提高区分的准确性及管理效率的问题。
如图4所示,是本发明一实施例提供的基于特征标记追踪技术的开源治理系统的功能模块图。
本发明基于特征标记追踪技术的开源治理系统400可以安装于电子设备中。根据实现的功能,基于特征标记追踪技术的开源治理系统400可以包括标记信息提取模块401、信息成分检测模块402及清单可视化模块403。本发明模块也可以称之为单元,是指一种能够被电子设备处理器所执行,并且能够完成固定功能的一系列计算机程序段,其存储在电子设备的存储器中。
在本实施例中,关于各模块/单元的功能如下:标记信息提取模块401,用于提取预先获取的开源组件包中的开源组件标记信息,其中,开源组件标记信息包括源头标记信息、哈希值标记信息及状态标记信息;信息成分检测模块402,用于对开源组件标记信息进行成分检测,得到开源组件状态;清单可视化模块403,用于根据开源组件标记信息及开源组件状态生成软件物料清单,并对软件物料清单进行可视化展示。
详细地,在一个实施例中基于特征标记追踪技术的开源治理系统400中的各模块在使用时采用与附图中的基于特征标记追踪技术的开源治理方法一样的技术手段,并能够产生相同的技术效果,这里不再赘述。
如图5所示,是本发明一实施例提供的用于实现基于特征标记追踪技术的开源治理方法的电子设备的结构示意图。
电子设备500可以包括处理器501、存储器502、通信总线503以及通信接口504,还可以包括存储在存储器502中并可在处理器501上运行的计算机程序,如基于特征标记追踪技术的开源治理程序。
其中,处理器501在一些实施例中可以由集成电路组成,例如可以由单个封装的集成电路所组成,也可以是由多个相同功能或不同功能封装的集成电路所组成,包括一个或者多个中央处理器(Central Processing Unit,CPU)、微处理器、数字处理芯片、图形处理器及各种控制芯片的组合等。处理器501是电子设备的控制核心(Control Unit),利用各种接口和线路连接整个电子设备的各个部件,通过运行或执行存储在存储器502内的程序或者模块(例如执行基于特征标记追踪技术的开源治理程序等),以及调用存储在存储器502内的数据,以执行电子设备的各种功能和处理数据。
存储器502至少包括一种类型的可读存储介质,可读存储介质包括闪存、移动硬盘、多媒体卡、卡型存储器(例如:SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器502在一些实施例中可以是电子设备的内部存储单元,例如该电子设备的移动硬盘。存储器502在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式移动硬盘、智能存储卡(Smart Media Card,SMC)、安全数字(Secure Digital,SD)卡、闪存卡(Flash Card)等。进一步地,存储器502还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器502不仅可以用于存储安装于电子设备的应用软件及各类数据,例如基于特征标记追踪技术的开源治理程序的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
通信总线503可以是外设部件互连标准(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。总线被设置为实现存储器502以及至少一个处理器501等之间的连接通信。
通信接口504用于上述电子设备与其他设备之间的通信,包括网络接口和用户接口。可选地,网络接口可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。用户接口可以是显示器(Display)、输入单元(比如键盘(Keyboard)),可选地,用户接口还可以是标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在电子设备中处理的信息以及用于显示可视化的用户界面。
图5仅示出了具有部件的电子设备,本领域技术人员可以理解的是,图5示出的结构并不构成对电子设备500的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
例如,尽管未示出,电子设备还可以包括给各个部件供电的电源(比如电池),优选地,电源可以通过电源管理系统与至少一个处理器501逻辑相连,从而通过电源管理系统实现充电管理、放电管理、以及功耗管理等功能。电源还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。电子设备还可以包括多种传感器、蓝牙模块、Wi-Fi模块等,在此不再赘述。
应该了解,实施例仅为说明之用,在专利申请范围上并不受此结构的限制。
电子设备500中的存储器502存储的基于特征标记追踪技术的开源治理程序是多个指令的组合,在处理器501中运行时,可以实现:提取预先获取的开源组件包中的开源组件标记信息,其中,开源组件标记信息包括源头标记信息、哈希值标记信息及状态标记信息;对开源组件标记信息进行成分检测,得到开源组件状态;根据开源组件标记信息及开源组件状态生成软件物料清单,并对软件物料清单进行可视化展示。
具体地,处理器501对上述指令的具体实现方法可参考附图对应实施例中相关步骤的描述,在此不赘述。
进一步地,电子设备500集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。计算机可读存储介质可以是易失性的,也可以是非易失性的。例如,计算机可读介质可以包括:能够携带计算机程序代码的任何实体或系统、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)。
本发明还提供一种计算机可读存储介质,可读存储介质存储有计算机程序,计算机程序在被电子设备的处理器所执行时,可以实现:提取预先获取的开源组件包中的开源组件标记信息,其中,开源组件标记信息包括源头标记信息、哈希值标记信息及状态标记信息;对开源组件标记信息进行成分检测,得到开源组件状态;根据开源组件标记信息及开源组件状态生成软件物料清单,并对软件物料清单进行可视化展示。
在本发明所提供的几个实施例中,应该理解到,所揭露的设备,系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能模块的形式实现。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。
因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附关联图标记视为限制所涉及的权利要求。
本申请实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或系统也可以由一个单元或系统通过软件或者硬件来实现。第一、第二等词语用来表示名称,而并不表示任何特定的顺序。
最后应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或等同替换,而不脱离本发明技术方案的精神和范围。

Claims (7)

1.一种基于特征标记追踪技术的开源治理方法,其特征在于,所述方法包括:
获取预先获取的开源组件包的组件来源及组件状态,对所述开源组件包进行特征提取,得到组件特征;对所述组件来源进行源头排序,得到源头序列,并利用预设的数据标记方法对所述源头序列进行信息配置,得到源头配置信息;对所述源头配置信息及所述组件来源进行匹配及整合,得到源头标记信息;提取所述组件特征内的哈希特征值,并利用所述数据标记方法对所述哈希特征值进行特征标记,得到哈希值标记信息;判断所述组件状态是否修改过;当所述组件状态未修改过时,利用所述数据标记方法将所述组件状态标记为第一状态标记信息,将所述第一状态标记信息作为状态标记信息;当所述组件状态修改过时,利用所述数据标记方法将所述组件状态标记为第二状态标记信息;获取所述组件状态的修改原因,利用所述数据标记方法根据所述修改原因对所述第二状态标记信息进行二次标记,得到状态标记信息;对所述源头标记信息、所述哈希值标记信息及所述状态标记信息进行汇总,得到开源组件标记信息;其中,所述开源组件包为从企业收集开源组件的私有库中提取的组件包;
对所述开源组件标记信息进行成分检测,得到开源组件状态;其中,所述开源组件状态用于指示开源组件是否被修改以及发生修改时的修改环节;
根据所述开源组件标记信息及所述开源组件状态生成软件物料清单,并对所述软件物料清单进行可视化展示。
2.如权利要求1所述的基于特征标记追踪技术的开源治理方法,其特征在于,所述对所述开源组件包进行特征提取,得到组件特征,包括:
对所述开源组件包进行三重卷积处理,得到卷积组件特征;
对所述卷积组件特征进行平均池化处理,得到池化组件特征;
对所述池化组件特征进行全连接处理,得到组件特征。
3.如权利要求1所述的基于特征标记追踪技术的开源治理方法,其特征在于,所述对所述开源组件标记信息进行成分检测,得到开源组件状态,包括:
对所述开源组件标记信息及预设的私有库中的组件包进行匹配计算,得到匹配度;
根据所述匹配度从所述私有库中选取目标开源组件;
提取所述目标开源组件对应的目标组件状态,将所述目标组件状态作为开源组件状态。
4.如权利要求1所述的基于特征标记追踪技术的开源治理方法,其特征在于,所述根据所述开源组件标记信息及所述开源组件状态生成软件物料清单,包括:
获取所述开源组件标记信息对应的开发生命周期,基于所述开发生命周期分别对所述开源组件标记信息及所述开源组件状态进行排序,得到信息序列及状态序列;
基于所述信息序列将所述开源组件标记信息作为行向量,并基于所述状态序列将所述开源组件状态作为列向量,建立软件物料表格;
将多个所述软件物料表格进行汇总,得到软件物料清单。
5.如权利要求1至4中任一项所述的基于特征标记追踪技术的开源治理方法,其特征在于,所述对所述软件物料清单进行可视化展示,包括:
对所述软件物料清单进行图像转换,得到物料清单图像;
对所述物料清单图像进行图像增强,得到增强物料清单图像;
利用预设的可视化命令对所述增强物料清单图像进行可视化操作,得到可视化图像并展示。
6.一种基于特征标记追踪技术的开源治理系统,其特征在于,所述系统包括:
标记信息提取模块,用于获取预先获取的开源组件包的组件来源及组件状态,对所述开源组件包进行特征提取,得到组件特征;对所述组件来源进行源头排序,得到源头序列,并利用预设的数据标记方法对所述源头序列进行信息配置,得到源头配置信息;对所述源头配置信息及所述组件来源进行匹配及整合,得到源头标记信息;提取所述组件特征内的哈希特征值,并利用所述数据标记方法对所述哈希特征值进行特征标记,得到哈希值标记信息;判断所述组件状态是否修改过;当所述组件状态未修改过时,利用所述数据标记方法将所述组件状态标记为第一状态标记信息,将所述第一状态标记信息作为状态标记信息;当所述组件状态修改过时,利用所述数据标记方法将所述组件状态标记为第二状态标记信息;获取所述组件状态的修改原因,利用所述数据标记方法根据所述修改原因对所述第二状态标记信息进行二次标记,得到状态标记信息;对所述源头标记信息、所述哈希值标记信息及所述状态标记信息进行汇总,得到开源组件标记信息;其中,所述开源组件包为从企业收集开源组件的私有库中提取的组件包;
信息成分检测模块,用于对所述开源组件标记信息进行成分检测,得到开源组件状态;其中,所述开源组件状态用于指示开源组件是否被修改以及发生修改时的修改环节;
清单可视化模块,用于根据所述开源组件标记信息及所述开源组件状态生成软件物料清单,并对所述软件物料清单进行可视化展示。
7.一种电子设备,其特征在于,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至5中任意一项所述的基于特征标记追踪技术的开源治理方法。
CN202311030207.9A 2023-08-16 2023-08-16 基于特征标记追踪技术的开源治理方法、系统及电子设备 Active CN116756710B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311030207.9A CN116756710B (zh) 2023-08-16 2023-08-16 基于特征标记追踪技术的开源治理方法、系统及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311030207.9A CN116756710B (zh) 2023-08-16 2023-08-16 基于特征标记追踪技术的开源治理方法、系统及电子设备

Publications (2)

Publication Number Publication Date
CN116756710A CN116756710A (zh) 2023-09-15
CN116756710B true CN116756710B (zh) 2024-03-22

Family

ID=87961206

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311030207.9A Active CN116756710B (zh) 2023-08-16 2023-08-16 基于特征标记追踪技术的开源治理方法、系统及电子设备

Country Status (1)

Country Link
CN (1) CN116756710B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116974619B (zh) * 2023-09-22 2024-01-12 国网电商科技有限公司 一种软件物料清单库的构建方法、装置、设备及可读介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740132A (zh) * 2016-01-25 2016-07-06 中国人民解放军国防科学技术大学 基于修改日志的软件包来源自动分析方法
CN109918285A (zh) * 2018-12-28 2019-06-21 北京奇安信科技有限公司 一种开源软件的安全识别方法及装置
CN112069084A (zh) * 2020-11-12 2020-12-11 深圳开源互联网安全技术有限公司 基于开源软件配置文件检测及解析方法
CN112434299A (zh) * 2020-10-23 2021-03-02 苏州浪潮智能科技有限公司 一种开源软件安全管理方法和装置
GB202116912D0 (en) * 2020-12-10 2022-01-05 Ibm Automated extension of program data storage
CN115033887A (zh) * 2022-06-17 2022-09-09 中国平安人寿保险股份有限公司 开源组件安全治理方法、系统、电子设备及存储介质
CN115658128A (zh) * 2022-10-18 2023-01-31 北京瀚马信息科技有限公司 一种生成软件物料清单的方法、装置及存储介质
CN115951916A (zh) * 2023-01-10 2023-04-11 中国民航信息网络股份有限公司 一种组件的处理方法、装置、电子设备及存储介质
CN116340185A (zh) * 2023-05-19 2023-06-27 国网数字科技控股有限公司 一种软件开源代码成分分析方法、装置及设备
CN116483435A (zh) * 2023-06-19 2023-07-25 国网数字科技控股有限公司 一种软件物料清单的生成方法、装置和计算机可读介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11966475B2 (en) * 2020-10-26 2024-04-23 Hewlett Packard Enterprise Development Lp Security level-based and trust-based recommendations for software components

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105740132A (zh) * 2016-01-25 2016-07-06 中国人民解放军国防科学技术大学 基于修改日志的软件包来源自动分析方法
CN109918285A (zh) * 2018-12-28 2019-06-21 北京奇安信科技有限公司 一种开源软件的安全识别方法及装置
CN112434299A (zh) * 2020-10-23 2021-03-02 苏州浪潮智能科技有限公司 一种开源软件安全管理方法和装置
CN112069084A (zh) * 2020-11-12 2020-12-11 深圳开源互联网安全技术有限公司 基于开源软件配置文件检测及解析方法
GB202116912D0 (en) * 2020-12-10 2022-01-05 Ibm Automated extension of program data storage
CN115033887A (zh) * 2022-06-17 2022-09-09 中国平安人寿保险股份有限公司 开源组件安全治理方法、系统、电子设备及存储介质
CN115658128A (zh) * 2022-10-18 2023-01-31 北京瀚马信息科技有限公司 一种生成软件物料清单的方法、装置及存储介质
CN115951916A (zh) * 2023-01-10 2023-04-11 中国民航信息网络股份有限公司 一种组件的处理方法、装置、电子设备及存储介质
CN116340185A (zh) * 2023-05-19 2023-06-27 国网数字科技控股有限公司 一种软件开源代码成分分析方法、装置及设备
CN116483435A (zh) * 2023-06-19 2023-07-25 国网数字科技控股有限公司 一种软件物料清单的生成方法、装置和计算机可读介质

Also Published As

Publication number Publication date
CN116756710A (zh) 2023-09-15

Similar Documents

Publication Publication Date Title
CN108563445B (zh) 应用程序代码检测方法及服务器
CN116756710B (zh) 基于特征标记追踪技术的开源治理方法、系统及电子设备
CN111339072B (zh) 基于用户行为的变化值分析方法、装置、电子设备及介质
CN113298159A (zh) 目标检测方法、装置、电子设备及存储介质
CN111694844A (zh) 基于配置算法的企业运行数据分析方法、装置及电子设备
CN111985545A (zh) 基于人工智能的目标数据检测方法、装置、设备及介质
CN113434542B (zh) 数据关系识别方法、装置、电子设备及存储介质
CN116664949A (zh) 目标物缺陷检测方法、装置、设备及存储介质
CN114968816A (zh) 基于数据模拟的策略测试方法、装置、设备及存储介质
CN113221888B (zh) 车牌号管理系统测试方法、装置、电子设备及存储介质
CN112215336B (zh) 基于用户行为的数据标注方法、装置、设备及存储介质
CN114896164A (zh) 接口优化方法、装置、电子设备及存储介质
CN114238233A (zh) 文件自动化清理方法、装置、设备及存储介质
CN114185588A (zh) 增量包生成方法、装置、设备及存储介质
CN113918296A (zh) 模型训练任务调度执行方法、装置、电子设备及存储介质
CN113051171A (zh) 接口测试方法、装置、设备及存储介质
CN114185881B (zh) 异常数据自动修复方法、装置、设备及存储介质
CN116881924B (zh) 一种基于数据监控的软件漏洞追踪方法及系统
CN114185622B (zh) 页面加载方法、装置、设备及存储介质
CN114185881A (zh) 异常数据自动修复方法、装置、设备及存储介质
CN113672483B (zh) 一种设备日志存储方法、装置、电子设备及介质
CN113504897A (zh) 基于模型训练的数据标注方法、装置、电子设备及存储介质
CN117272310A (zh) 一种组件和漏洞可达性分析方法、装置、设备及存储介质
CN114610340A (zh) 项目部署方法、装置、设备及存储介质
CN117830010A (zh) 订单状态一致性检测方法、装置、设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant