一种开源许可证的分析方法及装置制造方法及图纸

技术编号:15792344 阅读:106 留言:0更新日期:2017-07-10 00:17
本发明专利技术实施例涉及计算机技术领域,尤其涉及一种开源许可证的分析方法及装置,包括:接收待测文件和规划条件;检测所述待测文件涉及的开源许可证;将检测出的开源许可证与所述规划条件进行冲突匹配,确定所述检测出的开源许可证与所述规划条件之间的第一冲突;根据所述第一冲突生成第一风险评估报告。本发明专利技术实施例用以对开源许可证的使用风险进行分析和评估。

【技术实现步骤摘要】
一种开源许可证的分析方法及装置
本专利技术涉及计算机
,尤其涉及一种开源许可证的分析方法及装置。
技术介绍
开源许可证是对商业应用友好的许可。开源即为开放源代码,是在产品的出品和开发中提供最终源材料,平时所述的开源大多指开源软件,这种软件的版权持有人在协议的规定之下保留一部分权利并允许用户学习、修改、增进提高软件的质量。开源软件并非完全没有限制。最基本的限制,就是开源软件强迫任何使用和修改该软件的人承认发起人的著作权和所有参与人的贡献。任何人拥有可以自由复制、修改、使用这些源代码的权利,不得设置针对任何人或团体领域的限制。不得限制开源软件的商业使用等。而许可证就是这样一个保证这些限制的法律文件。开源许可证规定了关于修改、复制和再发布源代码的条款。行业内现行的开源许可证数量繁多、种类多样,不同开源许可证授予被许可人的各项权利大小和范围各不相同。由于同一软件经常会涉及多个开源许可证,不同开源许可证之间可能会相互冲突或是与使用者的预期目标相悖,因此在商业环境中使用开源软件或基于开源软件进行二次开发会面临许多潜在的法律问题和风险。开源许可证检测工具通过对软件源代码扫描等方式自动定位并识别特定的开源许可证。现有的许可证检测及分析工具只能进行简单的检测、标记和统计操作,不能支持进一步的风险评估和分析,在对开源许可证的内容及风险分析方面亟待加强。
技术实现思路
本申请提供一种开源许可证的评估方法及装置,用以对开源许可证的使用风险进行分析和评估。本专利技术实施例提供一种开源许可证的评估方法,包括以下步骤:接收待测文件和规划条件;检测所述待测文件涉及的开源许可证;将检测出的开源许可证与所述规划条件进行冲突匹配,确定所述检测出的开源许可证与所述规划条件之间的第一冲突;根据所述第一冲突生成第一风险评估报告。可选的,所述检测所述待测文件涉及的开源许可证,包括:所述待测文件包括多个检测文本,针对一个检测文本,利用k-shingle算法确定所述检测文本的词汇表;统计所述词汇表中各个词语在所述检测文本中的词频,确定所述检测文本的第一特征矩阵;针对数据库中存储的一个开源许可证,确定所述词汇表中各个词语在所述开源许可证中的词频,从而确定所述开源许可证的第二特征矩阵;根据所述第一特征矩阵和所述第二特征矩阵,计算所述检测文本与所述开源许可证之间的文本相似度;将文本相似度最高的开源许可证作为所述检测文本涉及的开源许可证。可选的,所述检测所述待测文件涉及的开源许可证之后,还包括:将检测出的多个开源许可证进行冲突匹配,确定所述检测出的多个开源许可证之间的第二冲突;根据所述第二冲突生成第二风险评估报告。可选的,所述确定所述检测出的开源许可证与所述规划条件之间的第一冲突之后,还包括:确定所述第一冲突对应的风险等级;所述确定所述检测出的多个开源许可证之间的第二冲突之后,还包括:确定所述第二冲突对应的风险等级。可选的,还包括:接收开源许可证的标识和/或片段;根据所述标识和/或片段,从数据库中确定出对应的开源许可证;根据所述对应的开源许可证生成许可证列表。一种开源许可证的评估装置,包括:接收单元,用于接收待测文件和规划条件;检测单元,用于检测所述待测文件涉及的开源许可证;匹配单元,用于将检测出的开源许可证与所述规划条件进行冲突匹配,确定所述检测出的开源许可证与所述规划条件之间的第一冲突;报告单元,用于根据所述第一冲突生成第一风险评估报告。可选的,所述检测单元,具体用于:所述待测文件包括多个检测文本,针对一个检测文本,利用k-shingle算法确定所述检测文本的词汇表;统计所述词汇表中各个词语在所述检测文本中的词频,确定所述检测文本的第一特征矩阵;针对数据库中存储的一个开源许可证,确定所述词汇表中各个词语在所述开源许可证中的词频,从而确定所述开源许可证的第二特征矩阵;根据所述第一特征矩阵和所述第二特征矩阵,计算所述检测文本与所述开源许可证之间的文本相似度;将文本相似度最高的开源许可证作为所述检测文本涉及的开源许可证。可选的,所述匹配单元,还用于将检测出的多个开源许可证进行冲突匹配,确定所述检测出的多个开源许可证之间的第二冲突;所述报告单元,还用于根据所述第二冲突生成第二风险评估报告。可选的,所述匹配单元,还用于:确定所述第一冲突对应的风险等级;确定所述第二冲突对应的风险等级。可选的,所述接收单元,还用于接收开源许可证的标识和/或片段;所述匹配单元,还用于根据所述标识和/或片段,从数据库中确定出对应的开源许可证;所述报告单元,还用于根据所述对应的开源许可证生成许可证列表。本专利技术实施例中,服务器接收用户上传的待测文件,检测该待测文件涉及的开源许可证。同时,服务器也接收用户输入的规划条件,该规划条件为软件项目未来规划的相关条件。将检测出的开源许可证与规划条件进行冲突匹配,即确定出涉及到的开源许可证的内容与软件的规划条件存在的冲突,最后根据第一冲突生产第一风险评估报告,并向用户进行反馈。本专利技术实施例自动识别软件中包含的开源许可证,并确定开源许可证与规划条件之间的冲突,最后基于冲突生成风险评估报告,为开源软件的用户更好地跟踪开发软件并作出合理决策提供支持和参考。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例适用的一种系统架构示意图;图2为本专利技术实施例提供的一种开源许可证的评估的流程示意图;图3为本专利技术具体实施例中开源许可证的评估的流程示意图;图4为本专利技术实施例提供的一种开源许可证的评估装置的结构示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述,显然,所描述的实施例仅仅是本专利技术一部份实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。如图1所示,本专利技术实施例所适用的一种系统架构,包括网页服务模块101、处理引擎模块102、数据库模块103和更新维护模块104。网页服务模块101、处理引擎模块102、数据库模块103和更新维护模块104可以集中在一个服务器中,也可以为不同服务器中的模块,这里的服务器可以是计算机等网络设备。优选地,网页服务模块101、处理引擎模块102、数据库模块103和更新维护模块104可以采用云计算技术进行信息处理。网页服务模块101向用户提供开源许可证信息查询、开源许可证检测以及风险评估等功能的入口,即用户通过网页服务模块101向服务器输入待测文件和规划条件等。此外,网页服务模块101通过列表、图表、文本等形式,向用户展示查询和分析结果。处理引擎模块102根据用户的输入从数据库模块103检索符合条件的信息,并将结果反馈到网页服务模块101,从而以搜索列表、详情信息等不同的形式向用户进行展示。该模块支持关键字模糊查询,即支持通过字符片段查找相关数据。处理引擎模块102还通过分析接收到的软件源代码,检测出待测文件中涉及的开源许可证,并检测出有版权文件和无版权文件等生成开源许可证的使用报告本文档来自技高网...
一种开源许可证的分析方法及装置

【技术保护点】
一种开源许可证的评估方法,其特征在于,包括:接收待测文件和规划条件;检测所述待测文件涉及的开源许可证;将检测出的开源许可证与所述规划条件进行冲突匹配,确定所述检测出的开源许可证与所述规划条件之间的第一冲突;根据所述第一冲突生成第一风险评估报告。

【技术特征摘要】
1.一种开源许可证的评估方法,其特征在于,包括:接收待测文件和规划条件;检测所述待测文件涉及的开源许可证;将检测出的开源许可证与所述规划条件进行冲突匹配,确定所述检测出的开源许可证与所述规划条件之间的第一冲突;根据所述第一冲突生成第一风险评估报告。2.如权利要求1所述的方法,其特征在于,所述检测所述待测文件涉及的开源许可证,包括:所述待测文件包括多个检测文本,针对一个检测文本,利用k-shingle算法确定所述检测文本的词汇表;统计所述词汇表中各个词语在所述检测文本中的词频,确定所述检测文本的第一特征矩阵;针对数据库中存储的一个开源许可证,确定所述词汇表中各个词语在所述开源许可证中的词频,从而确定所述开源许可证的第二特征矩阵;根据所述第一特征矩阵和所述第二特征矩阵,计算所述检测文本与所述开源许可证之间的文本相似度;将文本相似度最高的开源许可证作为所述检测文本涉及的开源许可证。3.如权利要求1或2所述的方法,其特征在于,所述检测所述待测文件涉及的开源许可证之后,还包括:将检测出的多个开源许可证进行冲突匹配,确定所述检测出的多个开源许可证之间的第二冲突;根据所述第二冲突生成第二风险评估报告。4.如权利要求3所述的方法,其特征在于,所述确定所述检测出的开源许可证与所述规划条件之间的第一冲突之后,还包括:确定所述第一冲突对应的风险等级;所述确定所述检测出的多个开源许可证之间的第二冲突之后,还包括:确定所述第二冲突对应的风险等级。5.如权利要求1所述的方法,其特征在于,还包括:接收开源许可证的标识和/或片段;根据所述标识和/或片段,从数据库中确定出对应的开源许可证;根据所述对应的开源许可证...

【专利技术属性】
技术研发人员:于镳蒋丹妮
申请(专利权)人:中国银联股份有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1