开源许可证的传染性问题浅析

JAVA-程序设计教程-静态库、动态连接库与LGPL授权,GPL授权 程序编制一般需经编辑、编译、连接、加载和运行几个步骤。在我们的应用中,有一些公共代码是需要反复使用,就把这些代码编译为“库”文件;在连接步骤中,连接器将从库文件取得所需的代码,复制到生成的可执行文件中。这种库称为静态库,其特点是可执行文件中包含了库代码的一份完整拷贝;缺点就是被多次使用就会有多份冗余拷贝。 为了克服这个缺点可以采用动态连接库。这个时候连接器仅仅是在可执行文件中打上标志,说明需要使用哪些动态连接库;当运行程序时,加载器根据这些标志把所需的动态连接库加载到内存。 另外在当前的编程环境中,一般都提 阅读详情
AI摘要

本文探讨了开源许可,特别是GPL的强传染性在中国法律实践中的影响,分析了司法案例中的处理策略,并提出商业软件如何规避 GPL 的挑战。强调了开发者在选择和使用开源代码时的合规考量和隔离路径。

作者 | 竞天公成律师事务所 于涛
文章来源为竞天公成律师事务所投稿
Richard Stallman (自由软件基金会创立者):自由软件面临艰巨的挑战和危险。维护我们的自由需要坚定的努力,就像我们当初获得自由一样。                                                      
作为一种软件开发的方法,相对于闭源开发,开源开发能够集结更广泛的同行间分散的代码,提高开发过程的透明度,使得软件开发质量更高、更可靠、更灵活、成本更低,同时终结掠夺性的供应商锁定。开源软件代码在不同主体间的使用,需要一套授权条款予以规范,明确其复制、使用、修改、转载、展示、商用等进行授权和限制的规则,由此类授权条款发展形成了众多标准化的开源许可。
在 4 月 15 日我们发布的文章《开源许可在中国的法律实践和风险防范》当中,我们全面分析了开源许可在我国的法律实践和风险防范问题,2 对我国目前的开源许可应用框架进行了探讨。而对于开源许可证的传染性,在开源代码自由、共享、协同开发的价值导向下如何在适用,在本文中将进一步结合中国法律体系与中国司法实践深入探究。
开源许可的传染性,指的是在软件开源的复制、修改、加工、转载、展示等过程当中,开源许可的效力往往具有延续性,许可证的授权和限制能够纵向“传染”到根据其自身开发的衍生作品、其自身的修改版本,甚至能够横向及于根据其开发的软件的其他部分。
目前,已经通过开源促进会(以下简称 OSI )认证的开源许可证就已有一百多种,常见的开源许可有 GPL 、 LGPL 、 Apache 、 MIT 、 BSD 、 MPL 、 SSPL 等。不同的开源许可针对其自身的效力传染性有不同的规则,使得不同开源许可的传染性有强有弱。其中,GPL 作为使用最为广泛、最具代表性的许可类型,在实务当中,往往由于其具有的强传染性,给软件合规带来一定的风险和挑战。因此,本文将辨析 GPL 同其他许可证在传染性方面的差异,总结开源许可引发的实务 争议和司法处理原则,为使用开源代码的软件合规、和预防传染性方面争议提供建议和思路。

一、GPL 和其他许可证的传染性规则浅析

目前,业内亦开发了不同的许可证选择工具,如 ChooseALicense 3、 LicenceDifferentiator4 等,这些选择工具能够较为直接地帮助开发者理解不同许可证的权属限制和授权范围,为开发者提供简单场景下的许可证推荐,但这些工具一般是对许可证规则的简单归纳,难以适应复杂的开发环境和开发需求。因此,要理解不同许可证的传染性规则并加以利用,一方面需要回归开源许可证本身的性质和条款,另一方面需要了解在中国的司法实际效果。
(choosealicense 网站截图)
根据开源许可证的历史发展和自身性质,大体而言,目前的开源许可证可以
分为三类,一类是 Permissive free software license (下译为宽松自由软件许可协
议),一类是 Copyleft License (或译著佐权许可证、反版权许可证;下译为反版
权许可证),一类是 Weak Copyleft License (下译为弱反版权许可证)。

宽松自由软件许可协议对软件的使用、修改、加工等的限制较低,通常只要求被许可方承认原始作者, 衍生软件可以成为私有软件,BSD 系列许可证、MIT、Apache-2.0 和木兰宽松许可证均属于此列;反版权许可证则顾名思义,由于其诞生理念即是为了促进软件开发合作和共享,因此往往要求对软件的修改和扩展, 必须按照获得该软件的许可证进行开源,且不得违背原作品的限制条款,如 OSL 系列许可证即属于此类;弱反版权许可证则采用了折中方法,要求对软件的修改、重新分发必须按照获得该软件的许可证进行开源,但合并这些软件代码的大型作品可以成为私有作品,此类许可的代表是 LGPL、MPL 等。

在宽松自由软件许可协议中,以木兰宽松许可证第二版为例,其中 1 、 2 条即规定:
“每个‘贡献者’根据‘本许可证’授予您永久性的、全球性的、免费的、非独占的、 不可撤销的版权许可,您可以复制、使用、修改、分发其‘贡献’,不论修改与否”“每个‘贡 献者’根据‘本许可证’授予您永久性的、全球性的、免费的、非独占的、不可撤销的(根 据本条规定撤销除外)专利许可,供您制造、委托制造、使用、许诺销售、销售、进口其‘贡 献’或以其他方式转移其‘贡献’。”
这意味着使用木兰宽松许可的开源软件在保证原作者版权的前提下,可以进行修改和再发布,也被用于闭源软件,并且不强制要求使用该许可证。因此,木兰宽松许可证传染性较弱。而作为反版权许可证的代表,GPL 系列许可的强传染性一向使其最具争议。
根据 GPL3.0 条款第四条、第五条:
4.传递逐字副本
您可以在收到程序的源代码后,以任何媒介传递其逐字副本,但您必须在每份副本上醒目地、适当地发布适当的版权声明;保持所有说明本许可证和根据第 7 条添加的任何非许可条款适用于代码的声明完整无缺;保持所有关于没有任何保证的声明完整无缺;并将本许可证的副本与程序一起交给所有接收者。
5. 传递修改过的源代码版本。
您可以根据第 4 节的条款,以源代码的形式传递基于本程序的作品,或根据本程序进行的修改,但您必须满足以下所有条件:
a) 该作品必须有醒目的通知,说明您对其进行了修改,并给出相关的日期。
b) 作品必须有醒目的声明,说明它是根据本许可证和根据第 7 条增加的任何条件发布的。这一要求修改了第 4 节中关于 "保持所有通告完整 "的要求。
c) 你必须将整个作品作为一个整体,根据本许可证授权给任何拥有副本的人。因此,本许可证将与任何适用的第 7 条附加条款一起,适用于整个作品及其所有部分,无论它们是如何包装的。本许可不允许以任何其他方式许可该作品,但如果你已经单独收到了这种许可,它不会使这种许可失效。
d) 如果作品有交互式用户界面,每个界面都必须显示适当的法律声明;但是,如果程序有交互式界面而不显示适当的法律声明,你的作品不需要使其显示。
如果一个受许可保护的作品与其他独立的作品的汇编,该汇编性质不是该受保护作品的延伸,且在存储或分发该作品的某一媒介上亦没有与之结合形成一个更大的程序,且该汇编及其产生的版权,没有被用来限制单独作品给予汇编作品用户的访问及其他合法权利,则该汇编被称为“聚合”。将一个受保护的作品包含在一个总体中并不导致本许可适用于总体的其他部分。
由上述条款可见, GPL3.0 作为反版权许可类型,其具有的强传染性主要体现在:使用了 GPL 作为开源许可的软件在修改、使用、复制之后生成的衍生作 品,必须依然适用 GPL 作为开源许可,若违反了这一条件,则许可证失效,衍 生作品将会被判断为侵权 。这些衍生作品既包括开源软件自身的修改版本,也包 括由开源软件自身或其修改版衍生出的新的作品。
针对传染性规则, GPL3.0 中亦规定了例外条款,即当使用 GPL 的开源软件同其他独立作品汇编时,在其非是该作品延伸、也并没有形成更大的程序的情况下,可以被视为一种横向的聚合体,GPL 可以不传染至该总体汇编的其他部分,这一规定对突破 GPL 传染性的情况进行了相当严格的解释和界定,也给实务界处理相应纠纷带来了挑战。

二、司法实践中对开源许可的处理方案

正如我们此前文章中介绍,目前司法实践当中,对于使用开源软件引发的纠纷,法院往往从计算机软件著作权合同或计算机软件著作权侵权角度进行分析和论证,将此类纠纷放置在计算机软件著作权保护的框架下进行裁判。7 针对 GPL这类强传染性的反版权许可类型,对其衍生作品的传染性的司法实践已经形成了较为稳定的惯例。实务裁判中,各方当事人主要争议的焦点,往往在于如何界定 其是否符合传染性规则的例外,从而判断是否构成违约或侵权 。通过下述具有代表性的案例,我们能管窥其中的主要争议焦点和裁判的裁量尺度。
1 、柚子(北京)科技有限公司、柚子(北京)移动技术有限公司与数字天堂(北京)网络技术有限公司纠纷
以柚子(北京)科技有限公司(简称柚子科技公司)、柚子(北京)移动技术有限公司(简称柚子移动公司)与数字天堂(北京)网络技术有限公司(简称数字天堂公司)纠纷一案为例,在二审当中,柚子科技公司、柚子移动公司辩称,一审判决中法院对数字天堂公司涉案软件的名称、数量和同一性代码文件的数量认定等方面存在事实认定错误,数字天堂公司开发的 Hbuilder 软件整体上应受到 GPL 协议约束, Hbuilder 软件三个涉案插件中包含大量开源或第三方代码,
因此应依照 GPL 协议的规定承担开源义务,因此其开发的软件 APICloud 并不构成侵权。
法院在裁判当中对被认为抄袭的三个插件是否适用 GPL 协议限制进行了判断,根据三个涉案插件分别处于三个独立文件夹,三个文件夹中均不具有 GPL 协 议文件,涉案插件所属软件的根目录下亦不存在 GPL 开源协议文件这一事实,认定该软件其他文件夹中的 GPL 开源许可效力不能及于此三个插件,三个插件不受 GPL 协议限制,因而不能被认定为开源软件,从而认定侵权。
可以看到,这一裁判思路并未对涉案软件是否能视为独立作品汇编而非为开源软件延伸进行实质判断,也并未从法律角度认证或判断涉案软件与主体结构软件构成之间的结构关系,而仅通过插件所定义的外在形式解决传染性的问题,因此,判决在准确认定 GPL 许可的传染性这一问题上仍有一定的讨论空间。
2 、不乱买电子商务(北京)有限公司与北京闪亮时尚信息技术有限公司计算机著作权纠纷
在不乱买电子商务(北京)有限公司(以下简称不乱买公司)与北京闪亮时尚信息技术有限公司(以下简称闪亮时尚公司)计算机著作权纠纷一案中,闪亮时尚公司上诉称,原审法院对 GPL 开源协议内容认定存在错误。原审法院认为前端文件与后端文件由于展现方式不同、所用技术不同、分工亦有明确区别,应属于独立程序。但不乱买公司所使用的遵循 GPLv2 协议的前端代码文件前端代码文件不能独立工作,必须和后端 PHP 软件进行配合。因此,不乱买公司的前端文件和后端文件共同构成了其主张著作权的软件。而 GPL 协议明确规定只要软件在整体上或者某个部分使用了来源于遵循 GPL 代码的文件,整个软件源码就必须无偿向所有第三方提供公开整套软件的源代码,因此不乱买公司的整体软件必须遵循 GPL 协议,向任何第三方无偿进行开源。同时,原审法院认为后端代码并非前端程序的衍生品及修订版本,因此 GPL 协议对权利代码无约束力的事实认定和逻辑存在错误。不乱买公司所使用的 GPLv2 的代码文件与后端文件没有做任何有效隔离,因此根据 GPL 协议的相关内容以及极强的传染性特性,包括前端文件和后端文件在内的整个软件实质上都可以视为其 GPL 协议前端程序的修订版本。不乱买公司则辩称原审法院认定无误。
针对争议焦点之开源使用的前端代码与后端代码是否有效隔离,使得 GPL 传染性无法及于后端代码而否定开源的问题,最高法院通过“前端代码与后端代码在展示方式、所用技术、功能分工 等上均存在明显不同”,认为 前端代码与后 端代码是相互独立的 ,且由于不乱买公司仅主张其对后端代码的权利,后端代码属于独立于前端代码的其他程序,因此判决不乱买公司主张的后端代码不受 GPL许可的约束,无需强制其进行开源。
在本案当中,最高法院没有限于从合同角度对开源许可进行 ,而是对程序和代码的应用边界进行了事实的判断和认定,明确从展示方式、所用技术、功能 分工三个标准 区分前后端代码的独立性。最高法院的上述认定结果,体现出来审判思路和分析可能突破开源许可约定规则,从事实认定的角度进一步阐述开源许可应用的边界,这对于目前尚处于起步阶段的开源许可司法实践增加了相当程度的不确定性,需要在梳理和总结实践判例中不断地归纳司法机关的判断标准,从
而进一步总结各许可的实际效果。
回归到本案中,不乱买公司通过对后端代码而非完整软件的权利要求,使得其成功规避了 GPL 许可的强传染性约束,因而本案对 GPL 传染性的隔离方式,并非适用 GPL 的传染性例外规则,而是通过代码自身的性质的不同,来将整体软件区隔为两部分代码,由此阻断 GPL 的传染性,其实质仍取决于后端代码是否构成对前端代码的借鉴、衍生、修改或重述,这也为解决传染性问题提供了新的思路。
3 、司法实践小结
总体而言,目前我国司法实践当中,对 GPL 传染性例外规则当中的聚合体和衍生作品之间的界定的裁判标准尚需要在个案中加以甄别,法院主要通过对代码的形式或实质性的审查,来判断 GPL 的效力是否能及于其他代码。
针对 GPL 传染性例外规则,根据自由软件基金会( Free Software Foundation ,简称 FSF )官方的 GNU 操作系统对常见问题的解释,“聚合版”和其他“修改版” 的不同在于:“聚合版”包含有多个独立的程序” 。“究竟怎么区分是两个独立的程序,还是一个程序的两个部分呢?这是一个事实命题,也是一个法律命题,最终会由法官来决定。我们相信合理的标准既依赖于通信的机制(exec 、 pipes 、 rpc 、共享地址空间的函数调用,等等),也依赖于通信的语义(交换了什么样的信息)。如果两个模块都包含在同一个可执行文件里,那么它们一定是一个程序的组件。如果两个模块运行时是在共享地址空间连接在一起的,那么它们几乎也构成一个组合软件。反过来,pipes 、 sockets 和命令行参数通常都是两个不同程序通信的机制。因此,如果使用它们来通信,这些模块正常应该是独立的程序。但是如果通信的语义非常密切,交换复杂的内部数据结构,那么它们也被会认为是一个大程序的两个组合部分。”10 可见,对 GPL 聚合体的判断,同样仰赖司法实践对代码的实质审查,同目前我国的判断模式略有不同的是,通过独立性审查判断为一个聚合体,则整个聚合体都不必受到 GPL 传染性的影响;而目前我国实务中的判断模式,则对代码进行逐个审核和区隔,尚未构筑对整个聚合体隔离 GPL 的裁判理路。
在互联网程序著作权纠纷日益丰富的今天,面对 GPL 的传染性问题,依然需要司法实践不断探索,不断创新,对目前面对的新情况作出回应。

三、传染性许可的隔绝路径讨论

针对使用开源代码的合规问题,如何隔绝如 GPL 一类反版权许可的强传染性,从而成功实现对具有强传染性的开源代码的商业性利用,对于基于强传染性开源代码开发的商业软件风险控制而言非常重要。
以谷歌解决安卓作为开源平台传染性问题的方案为例:众所周知,安卓中包含了 Linux 内核,而 Linux 这一操作系统本身采用的许可证是 GPL ;然而,谷歌在发布安卓时采用的是传染性弱的宽松自由软件许可协议 Apache-2.0 。两者看似颇有抵牾之处,但实际上,安卓仅仅采用的是 Linux 内核而非 Linux 的整个操作系统,这一内核仍然采用 GPL2.0 作为许可证,但其在安卓中是一个独立的操作程序。利用 GPL2.0 的规则例外,如一些调用目录例外,建立 GPL 和非 GPL 许可的分界,隔绝 Linux 内核的 GPL 许可。通过将这一内核独立,谷歌成功打造了隔绝 GPL 传染性的生态系统,绕开了 GPL 的强制开源要求。
利用 GPL 一类许可中的强传染性规则例外,将使用 GPL 的开源软件独立出来,是解决开源代码使用合规问题的一个重要的技术方向。而通过上文对我国司法实践的探讨,针对国内对 GPL 传染性的裁判思路,结合 GPL 的传染性例外规则,开发者在使用以 GPL 作为许可的开源代码时,应当注意自编代码同该开源代码的区隔,以及底层代码逻辑是否真实地并未基于该部分具有强传染性的开源代码作为修订的出发点,以绕开 GPL 传染性的约束。

四、结语

对于原创性的开源项目,开发者和社区在选择开源许可时需要根据未来主要用户的类型、使用场景等考虑使用具体许可的传染性,尽量减少未来可能产生的争议。而对于基于开源项目或代码而进行的商业性开发,首先需要根据不同开源项目和代码的既有许可情况判断其传染性,从而进一步判断在原有框架下继续开发使用的合规风险。其次,如果因商业化需要等需要改变原有的许可,则需要充分的考虑原有许可框架的空间,以及具体的操作实施路径的可能性,尤其与司法实践相互印证。本团队也将持续跟进开源项目的司法实践,继续为各类开源从业人员提供具体的判断标准和操作建议。
参考文献:
微信公众号 Pincap 《一文看懂开源许可证丨开源知识科普》,网页链接: https://mp.weixin.qq.com/s/AeLYjEz1bdsllD1bxolrHA
《如何选择开源许可证?》,网页链接: https://www.ruanyifeng.com/blog/2011/05/how_to_choose_free_software_licenses.html
《开源协议适用范围及其对软件著作权侵权判定的影响》,罗瑞雪,《中国版权》,网页链接: https://ipc.court.gov.cn/zh-cn/news/view-842.html
2025年SCA技术演进:AI驱动下的软件供应链安全实战解析 软件成分分析(SCA)是保障软件供应链安全的核心技术,其原理是通过自动化工具识别软件中使用的开源和第三方组件,并分析其安全与合规风险。随着软件供应链攻击成为主流威胁,以及AI技术广泛应用带来的依赖关系复杂化,SCA的技术价值日益凸显,它已从基础的清单生成工具,演进为贯穿研发运营全生命周期的风险免疫系统。在实际应用场景中,SCA通过深度成分发现、智能风险研判和自动化合规管理,帮助企业构建主动防御能力。本文以悬镜源鉴SCA为例,深入探讨了其如何利用AI增强的组件识别与漏洞关联、基于AI的漏洞可利用性预测等前沿技 阅读详情

相关推荐

开源许可证:一篇文章让你知道开源许可类型(一)

传染性”通常指开源许可证对衍生作品继承相同许可证要求的强制程度,即使用了开源代码后,用户代码是否必须按相同许可证开源。

啊不行了,要长脑子了 3134

GPL的传染性是什么意思?

依据GPL 的相关规定,如果原始授权人采用GPL来发布自己的作品,那么无论该作品的任何衍生作品,都要遵从GPL 的规则,尽管你对于该衍生作品拥有著作权,但是你也不可以因此认为它是你的心血而另立新规,可谓“子子孙孙无穷尽也”。也即规则的“传染性”。GPL 下的软件,是允许作为学习来复制使用的。但当基于该软件源代码开发出新作品,而该作品并非是自由软件的一部分,或基于其产生的衍生作品,它是独立的,不同于

1万+

CAAREA开源软件许可协议深入解析

本文还有配套的精品资源,点击获取 简介:《CAAREA自由软件许可与使用协议》是一份针对CAAREA组织开源软件的法律文档,它规范了用户对软件的使用、修改和分发行为。该协议允许用户自由访问和修改源代码,并可能包含特定条款,如许可证授予、源代码访问、再分发条件、商标和版权、责任限制、反专利条款、非逆向工程以及版本更新等。协议鼓励技术社区合作,同时保障知识产权和用户责任的清晰界...

weixin_42443533的博客 1270

主流开源软件协议

它们不仅定义了如何使用、修改、共享和分发软件,也反映了开源社区的理念和价值观。随着技术的发展和开源文化的演变,我们将持续见证开源协议的发展和它们对软件世界的影响。开源协议不仅影响软件的使用和分发,也对软件开发的文化、商业模式、法律实践产生了深远影响。这些协议对于维护软件的自由和开放性至关重要。开发者和组织需要理解不同协议的特点和适用场景,以确保其软件的合理使用和发展。强制性的源代码共享:如果修改并分发GPL许可的软件,必须以GPL的形式公开源代码。较宽松的要求:允许修改和分发源代码,无需发布修改后的代码。

LLL_LLLi的博客 934

边缘计算【智能+安全检测】系列教程--使用OpenCV+GStreamer实现真正的硬解码,完全消除马赛克

通过现有博客的GStreamer的解码方式解码,大多情况应该存在上图马赛克的问题,请勿紧张,其实上述url并没有调用硬件解码,后面有调用硬件解码的ULR,我们来在接下来的介绍中释获。通过RTSP协议连接海康威视摄像头将图片送入AI推理,发现OpenCV的VideoCapture使用的是软解码大量消耗了cpu的资源,并无法做到实时数据处理存在5秒钟的延时。只能把解码这部分送到硬件解码器去处理分摊掉cpu的压力,

Starry-SkyJing的博客 2426

传输线末端短路、开路、加电感的反射系数

时,频率变化约300MHz, 出现这种偏差是因为我们的计算中将电磁波传播速率默认为。时,频率变化约300MHz, 出现这种偏差是因为我们的计算中将电磁波传播速率默认为。下图为用网络分析仪实测一长度为30cm的传输线末端加一0.6uH的线圈的反射系数。下图为用网络分析仪实测一末端短路的长度为30cm的传输线的反射系数。下图为用网络分析仪实测一末端开路的长度为30cm的传输线的反射系数。末端加电感相当于在传输线末端延长了一段后末端短路,使得相位下降速率。幅度为0dB, 相位由。幅度为0dB, 相位由。

johnboat的专栏 1873

人话解读LGPLv3

大家都知道:你调用了 LGPL的库,你还是可以开发一个闭源程序。这就说明,LGPL比GPL要宽松。但并不像想象的那么简单。01为什么会有LGPL作为GPL的发明人Stallman,是自由软件的死忠坚定维护者,为什么还允许让别人用了自己的东西还能闭源?是的,他也并不喜欢LGPL,但这是争取用户的办法,他自己说过,自由软件库要和其他库竞争,如果其他库允许别人闭源,而他的不允许,那他显然占下风啊。Sta...

开源社KAIYUANSHE的博客 1万+

AI for Science:GNN预测分子性质全流程详解与工业实践

从分子表示到工业落地,一文掌握图神经网络在药物研发与材料设计中的核心实战近年来,的浪潮正深刻变革着传统科研范式。在药物研发与材料设计领域,作为核心环节,已从传统的实验试错转向基于图神经网络(GNN)的智能计算。本文将深入解析GNN预测分子性质的,涵盖数据准备、模型设计、训练优化到工业部署,并揭秘前沿技术与实战案例。

datacanvas2426的博客 1674

「势说新语」浅谈软件许可证

软件从闭源为主到开源成为主流,经历了几十年的发展。世界范围内,由于知识产权越来越受到重视和法律层面的保护,开源软件许可证也已经被广泛视为一种具有法律效力的合约,它规定了在软件使用和分发过程中的权利和义务。...

Sectrend的博客 1925

瑞芯微RK3506开发板DSM音频开发避坑指南:从硬件改接到内核配置全流程

本文详细解析了在瑞芯微RK3506开发板上进行DSM音频开发的完整流程与关键避坑点。内容涵盖从硬件改造(如电阻焊接)、内核驱动配置(DTS参数、补丁应用)到系统调试与波形分析的全过程,旨在帮助嵌入式开发者高效实现高信噪比、低成本的音频方案,避免常见错误。

weixin_29164091的博客 405

【目标追踪】python背景模型减除法原理及其实现

python基于背景模型差法的视频目标追踪帧差法的问题:背景模型差法目标追踪原理1. 基本思路:2. 图例讲解:3. 存在的问题&如何解决:4. 最终效果预览第一步——调用摄像头:1. 使用opencv打开视频or摄像头:2. 读取逐帧图片:第二步——处理图片:1. 转换成灰度图:3. 累加权重重构背景:3. 计算像素差:3. 使用中值滤波和膨胀腐蚀去噪:3.1 中值滤波:3.2 图像腐蚀...

梁瑛平的博客 1947

变更开源许可证合法性浅析

开源许可证变更的合法性取决于协议类型及变更方式:Copyleft许可证(如GPL)因"不可撤销"条款通常不可单方变更,否则构成违约;Permissive许可证(如MIT)变更需考虑贡献者授权及合同对价,否则可能面临违约或侵权风险。恶意变更开源许可证,限制开源用户或消费者的合法权益,有可能在司法程序或行政程序中被认定为不正当竞争行为。变更许可证时需评估贡献者权益、协议兼容性及法律风险。

2502_91211119的博客 1073

logisim中,如何设计一个位于十字路口的交通信号灯控制系统?

🏆本文收录于 《全栈 Bug 调优(实战版)》 专栏。专栏聚焦真实项目中的各类疑难 Bug,从成因剖析 → 排查路径 → 解决方案 → 预防优化全链路拆解,形成一套可复用、可沉淀的实战知识体系。无论你是初入职场的开发者,还是负责复杂项目的资深工程师,都可以在这里构建一套属于自己的「问题诊断与性能调优」方法论,助你稳步进阶、放大技术价值。

**My Coding Family** 1342

开源协议许可证浅析

如今开源的软件已经越来越被广泛使用,各种专利纠纷也越来越多。工作上要求对开源协议的理解也很迫切,做技术架构是每一个技术人员最渴望的职责,但要做好初级的技术架构工作首先要对各种各样的开源协议有深入了解,知道什么开源软件是工作在什么协议之下,对自己的产品有什么影响。这篇博文将讲解开源协议的相关知识(将不定期更新) 首先要弄懂一些基本概念: 1  什么是许可协议? 什么是许可,当你

KindAzrael的专栏 5576

Python全栈入门到实战【基础篇 05】核心基础:Python的2种运行模式(交互式+命令行式)

Python代码运行模式详解:交互式与命令行式对比 摘要: Python提供两种核心运行模式:交互式(REPL)和命令行式(脚本式)。交互式模式适合快速测试语法,即时反馈结果,通过终端输入python启动,特点是无需保存、临时执行,适合验证小段代码逻辑。命令行式模式需将代码保存为.py文件后运行,适合开发完整程序,可重复执行和修改。两种模式各有优势:交互式便于学习调试,命令行式适合实际开发。掌握两种模式的使用场景和切换方法,是Python入门的关键技能,能显著提升学习效率。

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 4551

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

常用开源协议许可证浅析

[code="java"] 如今开源的软件已经越来越被广泛使用,各种专利纠纷也越来越多。工作上要求对开源协议的理解也很迫切,做技术架构是每一个技术人员最渴望的职责,但要做好初级的技术架构工作首先要对各种各样的开源协议有深入了解,知道什么开源软件是工作在什么协议之下,对自己的产品有什么影响。这篇博文将讲解开源协议的相关知识(将不定期更新) 首先要弄懂一些基本概念: 1 什么是许可协议...

KindAzrael的专栏 476

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

了解开源的许可证GPL、LGPL、BSD、Apache 2.0的区别

<br />你对开源有多少了解呢?如果你是软件开发者,要开源软件,不单单是开放源代码就可以了,选择一种许可证很重要,一个许可证之于软件就相当于价值观之于普通人,代表了这个软件的基本品性。一个错误的许可证选择可能会直接导致整个项目的失 败,XFree86就是一个好例子。<br />各种开源的许可证主要的限制还是在redistribution(发布),所以个人/商业公司开发的软件包含了GPL的代码,只要你不发布,是可以任意使用的。<br />下面是几个开源许可证的区别:<br />GPL<br />这里不想再解

QQ81371336的专栏 1104

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

软件著作权使用许可种类

一、软件著作权使用许可种类  1、转让登记  软件著作权转让登记是指权利人就其已获取的软件著作权登记证书在进行转让的过程中向登记机关登记备案的行为。  2、专有许可  软件著作权人将权利全部或部分转让或专有许可给他人的,合同的当事人可以办理转让或专有许可合同登记。  《著作权法》第二十五条 与著作权人订立专有许可使用合同、转让合同的,可以向著作权行政管理部门备案。  第二十六条 著作权法和本条例所称与著作权有关的权益,是指出版者对其出版的图书和期刊的版式设计享有的权利,表演者对其表演享有的权利,录音录像制作

m0_63239710的博客 593

GPL 协议的传染性分析

GPL协议传染性分析:特点、认定与司法实践 。摘要:GPL协议的传染性是其核心特征,要求衍生作品必须继续遵循GPL条款。司法实践中,法院通过分析代码交互方式、功能依赖程度等认定传染性,典型案例包括罗盒诉风灵案等。虽然存在独立作品的例外情形,但认定标准复杂,需结合技术细节综合判断。当前司法实践对GPL传染性的认定仍面临技术理解不足等挑战,反映出行业对开源协议认知的局限性。随着开源诉讼增多,深入理解GPL传染性对软件合规开发具有重要意义。

2502_91211119的博客 1079

开源许可证:关于开源许可中强传染性许可证6个你不知道的小技巧(二)

若商业软件中,避免直接集成 GPL 代码,优先考虑弱传染性许可证(如 LGPL、MIT、Apache 2.0)。通过微服务、网络接口、IPC 调用方式与 GPL 代码分离,避免整体被视作衍生作品。的是指具有强 Copyleft 特性的许可证。如 Apache、MIT、BSD 等更为宽松许可的开源库或框架。开源许可证中,通常被称为。

啊不行了,要长脑子了 2716

java是自由软件吗_开源LGPL——如何宣告自己的程式为自由软件

这里使用LGPL协议为例简单说明一下如何将自己的程序宣告为开源软件首先确定自己要使用的开源协议,这里选择LGPL(关于其它协议及协议的详细内容,请参考其它资料),然后确定并准备以下几部分内容:一份版权信息声明文件,一般命名为"NOTICE"一份所使用的协议的副本.如果程序为多个文件构成,则在每个文件中包含文件头信息,声明协议及版权信息一般来说主要就是由以上几部分组成,下面简单说明一下相关组成部分。...

weixin_30649767的博客 418

GPL“传染性”的本质

当然,GPL许可证也给了例外豁免,即,如果你自己开发的程序与GPL程序在技术上采取了隔离措施,使得你自己开发的程序与GPL程序不再成为一个整体软件,而是相互独立的两个软件,那么,你自己开发的程序与GPL程序就不会作为整体认定为GPL程序的演绎作品,就不会受到GPL许可证的约束。同时,Apache、MIT、BSD许可证的条款与GPL许可证条款没有冲突,GPL许可证对著作权人和使用人的限制是最多的,GPL许可证与Apache、MIT、BSD许可证相兼容,那么最终这个软件就应当以GPL许可证进行许可了。

dotNET跨平台 631
上一篇: 百度自动驾驶平台生态部负责人张亮:Apollo开放平台,连接技术场景 赋能人才生态
下一篇: 议程速递 | 7月27日分论坛议程一览
开源头条
博客等级 码龄13年 1475粉丝 226原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值