从技术鉴定角度看软件开源成分检测

引言

当前,开源已经成为软件产业基础设施和“标准件库”,全球97%的软件开发者和99%的企业使用开源软件,软件供应链越来越多地依赖开源代码。根据Gartner统计,现代软件供应链中,80%-90%代码来自开源;所有应用开源的软件中,平均每个程序要依赖个开源组件、工具或库。在操作系统、数据库、中间件、虚拟化等基础软件领域,以及云计算、大数据、人工智能等新一代信息技术底层架构中,开源产品已占据主要市场份额,甚至位居首位。因此,在软件侵权纠纷中,识别软件代码中的开源成分成为技术鉴定的一项重要内容。

国家工业信息安全发展研究中心近年来开展了大量软件侵权纠纷中的技术鉴定工作。在鉴定过程中,业界通常做法是使用关键词在代码托管网站和搜索网站进行检索,根据检索结果和代码文件版权声明等确定源代码是否开源。但是众所周知,互联网上的数据瞬息万变,国外开源代码托管平台(如GitHub、SourceForge、GoogleCode)还常存在不稳定和访问受限的情况,搜索关键词和搜索引擎的选取会直接影响检索结果。另一方面,在软件商业秘密案件中,软件企业在梳理自己技术秘密时,管理人员不通过专业工具很难掌握团队在开发过程中使用开源代码的详细情况,存在着技术人员故意隐瞒某些开源代码、简单修改开源代码并去掉许可声明,以及有些开源软件本身还会嵌套其它开源代码等情形。这些都导致企业在主张自己的权利时存在一定的困难。

在技术鉴定中引入开源成分检测,能有效解决上述的问题。首先,开源成分检测工具能够帮助企业摸清软件产品中的开源代码使用情况,并且部分检测工具还能够检测出代码中的许可证合规和冲突情况,帮助企业在诉讼前对自己的软件资产进行全面的梳理和掌握。其次,相对于公知性鉴定中动辄数十万的鉴定费用,使用开源成分检测工具分析后能大幅降低诉讼成本。最后,开源成分检测报告虽然不能直接作为公知性鉴定意见使用,但是它能够成为鉴定意见的一个有力参考和补充。近年来,国内外开源成分检测技术发展很快。国外检测工具起步较早,技术较为成熟,代表工具有blackduck、fossid等。国内检测工具基本从年开始出现,如redrocket、checode、棱镜七彩等。年5月中国电子商会发布的《T/CECC-软件代码开源成分与安全检测指南》团体标准,标准包含了软件代码开源成分及其安全性检测的检测过程要求及方法,为开展检测提供了依据和指导。国家工业信息安全发展研究中心开源软件供应链安全实验室对国内外主流工具进行了研究和试用。通过相关试用发现,大部分工具的成熟度和检测的准确性,以及积累的知识库基本能够满足开源成分检测的需要,各款工具各有优势,但检测结果仍存在偏差或者漏检误检等情形。基于此,实验室集成开发了一套开源软件供应链风险防范治理平台,集成国内外多款工具,能够对指定代码文件、代码仓库地址中的源代码进行分析,同时发起不同工具的检测,经综合评估后输出统一、完整的结果,用户可以快速掌握被测系统中存在的开源软件使用情况,及时发现存在的安全及知识产权风险。

END




转载请注明:http://www.180woai.com/afhpz/5650.html


冀ICP备2021022604号-10

当前时间: