AICon上海「Agent与多模态解决方案专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

区块链软件开发者需要注意的几种软件许可协议

  • 2018-09-22
  • 本文字数:1940 字

    阅读完需:约 6 分钟

Mark Radcliffe 和 Victoria Lee 是 DLA Piper 律师事务所的合伙人。

在开放源码许可(OSS)下发布的软件对区块链项目的成功至关重要。此类许可允许用户就开源软件进行协作和分布式开发,鼓励用户迅速采用该类软件,并且允许社区成员“fork”特定项目以解决他们策略上的分歧。

事实上,OSS 许可除了在以太坊和比特币这两个主要的公共区块链均有使用以外,在其他主要的区块链项目也有使用,包括 HyperLedger 项目和和 R3 开发的 Corda。

然而,OSS 许可通常跟传统意义上的专有软件许可存在一定的差异。尽管如此,社区中却少有讨论到,关于选择合适的 OSS 许可和遵守该许可条款的重要性。

如果区块链项目想要被企业采用,那么对 OSS 许可的选择将会对其采用率产生实质性的影响。即使对于像以太坊这样的既定项目,潜在的企业用户也会仔细考虑可能会使用到的 OSS 许可。

例如,IBM 的 Jerry Cuomo 最近在 Frederick Munawa 的 Blockchain Innovation 播客中指出,以太坊 OSS 许可的复杂性是 IBM 决定从以太坊转移到自己的区块链项目的原因之一,而该项目最终成为 HyperLedger 项目的一部分。

在选择时,区块链项目的潜在企业用户会以统一的标准来评判其他 OSS 许可项目和区块链项目:(1)OSS 项目许可或许可的复杂性 ; (2)遵守此类 OSS 许可义务的潜在困难 ; (3)区块链项目与其他软件项目集成时可能面临的挑战。

不同的 OSS 许可在条款上有很大的差异。Open Source Initiative (OSI) 已批准 83 个许可作为“开源”许可。

然而,OSS 许可完整的复杂性(full complexity)是由 Linux 基金会管理的 SPDX 项目提出的,该基金会目前已经确定了 345 个“主要”许可 ; Black Duck Software 在其知识库中列出了 2,500 个版本的 OSS 类型的许可,涵盖了来自 9,000 多个开源项目的 forge 和存储库(repository)中的超过 530 亿行的 OSS 代码。Black Duck 指出,其中 94%的 OSS 项目都使用了前十大 OSS 许可。

其中两种主要类型的 OSS 许可是“著佐权”(copyleft)和“宽松式许可”(permissive)。 以太坊主要使用了两个著佐权许可:次要通用公共许可第三版本( Lesser General Public License version 3 ,LGPLv3)和通用公共许可第三版本(General Public License version 3,GPLv3)。 另一方面,比特币核心钱包(Bitcion Core)使用了世面上最受欢迎的一种许可,MIT 许可。

著佐权许可对 OSS 的使用施加了最严格的条款。最常见的著佐权许可的例子,是用于 Linux 操作系统程序的通用公共许可版本 2(GPLv2)。

据 Black Duck Knowledge Base 称,GPLv2 是第二受欢迎的许可,有 14%的 OSS 项目采用了该许可。以太坊所使用的 GPLv3 是 2007 年出版的 GPLv2 的更新版本。著佐权许可的最基本特征是其“互惠”(reciprocal)条款:法律上要求原始 OSS 和原始 OSS 所有的“衍生作品”(derivative work)仅根据著佐权许可的条款分发。“衍生作品”是美国版权法下的专业术语,表明作品是基于一个或以上已有原创作品的作品。

版权法最初旨在保护书籍、歌曲和电影,但也保护软件。比如,“权力的游戏”系列电视剧,就是基于同名小说系列的衍生作品。尽管衍生作品通常意味着对软件进行修改,但衍生作品也可以通过其他方式被创造出來:例如,两个编译在一起的程序通常被视为衍生作品。

但是,版权法在软件中的应用仍然充满不确定性。因此,将著佐权许可项目与使用了其他 OSS 许可或专有许可的项目集成在一起,需要进行复杂的法律分析。

因为著佐权许可具有更复杂的义务,遵守著佐权许可比遵守宽松式许可更具挑战性,而且当缺乏明确性的版权法应用于软件时也会造成其他的问题。支持著佐权许可的 OSS 社区非常担心专有供应商会滥用 OSS。

该类社区在寻求用户遵守此类许可方面非常积极。事实上,所有关于 OSS 许可提出的诉讼都是由著佐权许可的执行而造成。

宽松式许可

“宽松式”许可在 OSS 使用上施加的条款非常少,通常只要求用户包含通知和许可副本。与著佐权许可不同,它们不包括“互惠”义务。

支持宽松式许可的 OSS 社区通常认为,宽松式许可会鼓励 OSS 项目更加快速地被采用,并且开发出成功的区块链项目是不需要的著佐权许可中的“互惠”条款。

使用宽松许可最著名的例子是比特币所使用的 MIT 许可。根据 Black Duck Knowledge Base,其中 38%的 OSS 项目采用了 MIT 许可,也使 MIT 许可成为最受欢迎的 OSS 许可。

大多数区块链项目历来都没有关注选择 OSS 许可的重要性。但是,慎重考虑对 OSS 许可的选择,花时间了解不同 OSS 许可的合规性要求和执行方法的差异,应该能为項目带來长远的利益。

许可选择不仅会影响企业采用该项目的意愿,同时也控制着项目的合规理念和社区文化。

原文链接: https://www.coindesk.com/the-big-legal-issue-blockchain-developers-rarely-discuss/

感谢冬雨对本文的审校。

2018-09-22 18:411598

评论 1 条评论

发布
用户头像
专业区块链软件开发,应有尽有的案例,专业定制
2021-10-22 10:30
回复
没有更多了
发现更多内容

Java开发培训的就业方向有哪些?

小谷哥

贝斯的圆桌趴 |科技公司内部 SaaS 工具大公开

Bytebase

设计模式的艺术 第十四章享元设计模式练习(开发一个多功能文档编辑器,在文本文档中可以插入图片、动画、视频等多媒体资料。为了节省系统资源,相同的图片、动画和视频在同一个文档中只需保存一份,但是可以多次重复出现,而且它们每次出现时位置和大小均可不同)

代廉洁

设计模式的艺术

BI系统的分布式部署原理和技术实现

葡萄城技术团队

分布式 BI 部署 可视化数据

写出优秀的产品手册文档的技巧

Baklib

文档 产品手册

太牛了,这是我见过把微服务讲的最全最好的SpringCloud架构进阶

程序知音

Java 架构 微服务 SpringCloud 后端技术

Linux vim的使用和配置

挚爱光小胖

Linux vim教程

elasticsearch的字符串动态映射

程序员欣宸

elasticsearch 9月月更

Java培训学习技术需要具备哪些能力

小谷哥

如何选择比较靠谱的数据培训班?

小谷哥

微服务治理热门技术揭秘:动态读写分离

阿里巴巴中间件

数据库 阿里云 微服务 云原生

怎么来选择大数据培训课程

小谷哥

学员在web前端培训机构应该怎么学习

小谷哥

零信任态势评估:安全控制自动化

权说安全

零信任 动态评估

Baklib|FAQ常见问题对产品推广的重要性

Baklib

产品 FAQ

知识管理对企业的作用不容小觑

Baklib

知识管理 企业

大规模数据如何实现数据的高效追溯

华为云开发者联盟

大数据 后端 华为云 企业号九月金秋榜

什么是数据质量管理?企业怎样做好数据质量管理?

雨果

数据质量

如何在 ACK 中使用 MSE Ingress

阿里巴巴中间件

阿里云 容器 微服务 云原生 ingress

Android技术分享| Activity 过渡动画 — 让切换更加炫酷

anyRTC开发者

android 音视频 动画 移动开发 Activity

软件测试 | 测试开发 | Jenkins 踩坑(四)|基于接口自动化测试完成 Jenkins+GitHub+Allure 的结合

测吧(北京)科技有限公司

测试

画一个 “月饼” 陪我过中秋,使用 ESP32-C3 制作炫彩月饼

矜辰所致

电路设计 ESP32-C3 9月月更

融云视频会议,助力政企高效协同

融云 RongCloud

会议 音视频技术 政企

备战2023秋招,应届生应做好哪些准备

C++后台开发

应届生 C++后台开发 校招 秋招 C++开发

TiFlash 源码解读(八)TiFlash 表达式的实现与设计

PingCAP

源码阅读 TiDB TiDB 源码解读

干货 | 如何实现软件自动化部署?

嘉为蓝鲸

运维 IT 应用发布 应用部署

干货 | 企业数字化转型过程中,传统IT和数字型IT能否严格区分?

嘉为蓝鲸

运维 转型 IT 数字化 研发

Linux系统安装配置Tomcat

Linux Tomccat 9月月更

OneFlow源码解析:Tensor类型体系与Local Tensor

OneFlow

深度学习 源码解析 算子

python os模块

zxhtom

9月月更

NFT软件开发:什么是数字藏品?

开源直播系统源码

NFT 数字藏品 数字藏品系统软件开发 数字藏品开发

区块链软件开发者需要注意的几种软件许可协议_语言 & 开发_Mark Radcliffe_InfoQ精选文章