答:开源软件具有开放、共享、自由等特性,在软件开发中扮演着越来越重要的角色。现代化软件开发过程中,开发人员及企业为了提高开发效率,会优先考虑安装相关第三方开源组件,这种开发模式可降低研发成本,推动软件系统的快速迭代。根据Veracode的研究报告显示,超过96%的产业机构在其开发实现的软件应用代码库中使用开源软件[ Veracode. State of software security: Open source edition. https://info.veracode.com/report-state-of-software-security-open-source-edition.html]。
开源已经成为软件技术创新和软件产业发展的主要模式,但无论是开源软件的使用还是开源代码的使用,都伴随着风险,其中最大的风险之一就是潜在的知识产权风险。开发者通常会为开源软件选择不同的开源许可证来约束其使用条件,以期能有效地保护知识产权和维持软件的长远发展。根据版权法,以任何方式使用软件都需要以描述授予用户的权利以及用户必须履行的义务的许可证的形式获得许可。开源许可证是允许在既定条款和条件下使用、修改或共享源代码的许可证。
开源软件使用过程中面临的知识产权风险包括版权风险、专利风险、商标风险、开源风险等。
1.版权风险。使用开源软件的版权风险来源于两个方面,一是贡献者将自己不具有版权的代码贡献到开源社区,使开源软件具有版权瑕疵,后续使用者使用该开源软件,会造成侵犯他人版权。大多数开源许可协议都有“不担保”条款,开源软件的用户使用了“不清洁”的开源软件所造成的侵权责任,需要自己承担。二是开源软件使用者没有按照开源许可协议的规定使用开源软件,例如使用GPL许可协议下的代码再发布软件时没有提供源代码,这属于违约行为,会导致许可协议赋予的所有权利被收回,继而对开源软件的复制、修改、发布会造成版权侵权。
2.专利风险。使用开源软件的专利风险来源于内部、外部两个方面。内部专利风险,是指开源软件的贡献者以个人名义把其中某项技术申请专利并获得批准。有些开源许可协议,如GPL-3.0规定了专利授权,就软件发布者所拥有专利权的程序而言,所有后续使用者都将自动获得免费的专利许可,而且规定了软件发布者不可以发起专利诉讼。然而,部分开源许可协议对专利授权没有明示(如BSD、MIT),这就蕴含了一定的专利侵权风险。外部专利风险,是指不受开源许可协议约束的第三方向开源软件使用者发起专利诉讼,声称其专利被开源软件贡献者使用在开源程序中。不同于版权仅仅保护计算机软件创作的表达,专利能够保护具体的方法和功能。专利享有绝对的排他权,在专利有效期内,权利人能够禁止实施专利技术,即使该技术是他人独立开发的也不例外。
3.商标风险。使用开源软件的商标风险来源于两个方面:一是开源软件使用的开源许可协议未经OSI认证,但使用了open source商标。二是开源软件使用者不按开源许可协议规定,使用贡献者的商标、商号、服务标记等进行软件宣传,导致商标侵权。
4.开源风险。使用开源软件的开源风险来源于许可证协议的强传染性。如果一个许可证协议是copyleft类型的许可证,要求衍生作品或者组合作品必须使用相同的许可协议进行发布,产品将面临因为开源协议被迫开放源代码的风险。
