X-lab2017 / oss101-bok

https://www.x-lab.info/oss101-bok/
2 stars 4 forks source link

开源许可证 #20

Open will-ww opened 1 month ago

will-ww commented 1 month ago

开源许可证(OpenSource License)也称开源软件许可协议,是一种法律许可.声明用户对开源代码使用的程度, 目前,国际上通用的开源许可证数量众多,大多数开源许可证的共同特点是允许用户在开源软件的过程中免费使用、修改、共享源代码。从许可证的使用条件来看,主要分为宽松型(Permissive)许可证和著佐权型(Copyleft)许可证。 宽松型许可证对软件使用方基本没有限制,使用方可以修改代码之后闭源常见的这类许可证有BSDMIT、Apache-2.0等,对于开源商业化比较友好著佐权型许可证在用于开源软件时可以不经许可随意复制,但增加了一个限制条件,即修改后的代码不得再次闭源。业界最知名的著佐权型许可证是GPL,它是 Linux得以成功的一个很重要的开源基础设施的支撑。

随着云计算的普及和云市场的分发,开源许可协议范围逐渐扩大,先后涌现出了一批有争议的新型针对公有云厂的开源许可证,如SSPL、BSL、Elastic许可证。

开源许可证以开放、共享、交流、协作为宗旨。开源许可证充分运用了类合同的自由原则。许可证提供方以其个人意志对开源许可证的使用提出要求,对许可证使用方作出种种限制,实现了开源许可证的强制传递,从而确保实现开源宗旨、防止用户将开源软件闭源,让大众都能感受到开源软件的优势,并通过开源许可证在产权保护与知识共享中达到一种平衡。

开源许可证与其他软件协议的区别

1.与拆封许可协议的区别

拆封许可协议是由软件商事先制定封装的软件许可协议,一般以软件《用户协议》的方式表示出来。通常认为,拆封合同是一种标准合同或格式合同,@开源许可证虽然具有与拆封许可协议一样的形式特征,但又与其有所区别前者是遵循著作权理念,通过合同自由使软件作者与用户的权益得到保障:后者则是借助合同自由,达到超越著作权、反限制著作权的目的。

2.与自由软件许可协议的区别

开源软件与自由软件都是非公有软件,都应遵守许可协议的内容。“开源软件”的理念由与“闭源软件”相对立的“自由软件”发展而来,倡导自由、共享协作。开源许可证将自由许可协议的共享精神继承下来,但修正了其有关继受的严格要求。

3.与商业软件许可协议的区别

商业软件许可协议是软件提供方将商业软件转让给用户的协议。③为了保护商业秘密,许可协议通常约定商业软件的源代码是封闭的。

有些商业软件许可协议也约定了开放源代码,如对有一定使用期限的试用软件,仅提供源代码,但不允许用户对其代码进行修改、演绎、再发布等。这点与开源许可证相区别。

开源许可证的主要类别

根据使用开源软件的软件代码传染性的强弱,将常见开源许可证分为四种类型:

image

常见开源许可证介绍

开源许可证是个相当庞杂的范畴,仅OS批准的许可证就有80余种,还有数百种在开源生态中流传的其他许可证。因此,为了明晰具体开源许可证的定义及帮助适用,以下将对常见开源许可证的核心条款和使用要求逐一进行介绍。

GPL下软件使用方可以自由修改并私下使用相应代码,而无须发布修改后的版本;但如果涉及分发,则软件使用方需要根据GPL的约定将修改后的开源代码提供给用户。因此,辨别在GPL下构成分发的场景至关重要。

GPL条款表明,在一个组织或公司内使用不构成分发。因为在这种情况下,组织或公司只是为自己制作副本,组织或公司可以开发修改后的版本并通过自己的设施安装该版本,而无须允许员工将该修改后的版本发布给外部人员,但如果组织或公司将副本转移给其他组织或个人,这就是分发。特别是向承包商提供副本以供异地使用是典型的分发。那么将副本转移到拥有多数股权和控制的子公司是否构成分发?这个问题要根据相应司法管辖区的版权法而定。如果在某些国家或地区,这种行为被视为分发,那么子公司可以获得重新分发程序的权利。

开源软件常见风险

纵观 IT行业的发展,开源软件已经成为推进行业不停进步的巨大力量。据相关数据平台统计,全球90%以上的云服务器操作系统和80%以上的移动操作系统都基于开源软件。目前,国际政府组织与科技巨头正积极采取治理行动改善开源风险。随着开源组件的不断增多,大量的第三方开源组件被集成到软件中,导致软件供应链变得越来越复杂。开源软件供应链关系网络越发复杂和多元化,导致信息系统的防护难度越来越大。2022年,ApacheLog4j等基础开源软件频现高危风险,多个国家和大量企业均因此遭受严重损失。2022年1月和5月,美国白宫集结30余家科技企业与政府机关举行开源软件安全峰会,商讨应对开源软件供应链风险挑战。

目前开源软件渗透到了我国关键信息基础设施和软件开发之中,我国已经成为全球开源的智库高地。然而,由于开源软件本身的特殊性,在使用或引入开源软件或代码时,可能会面临诸多风险,导致软件使用方在使用开源软件时严重缺乏安全感。开源软件风险主要来自以下几个方面:

由于开源软件影响面广、影响程度深,我国在《“十四五”规划》中首次提出完善开源生态的目标,强调“支持数字技术开源社区等创新联合体发展,完善开源知识产权和法律体系,鼓励企业开放软件源代码、硬件设计和应用服务”①. 基于此国家战略,软件使用方在拥抱开源的同时,也要做到重视开源软件合规体系的建设。建设开源软件合规体系的基础在于,在引入和使用开源软件时对开源软件、开源协议及相关风险保持清楚准确的认识,做到正确使用开源软件。

PureNatural commented 2 weeks ago

开源许可证一种具有法律效力的格式合同,定义用户自由使用、修改、复制或分发开源许可作品的权利和义务。