案例分享:阿里巴巴全球化电商核心系统架构实战,点击学习>>> 了解详情
写点什么

世界顶级开源象棋引擎被“剽窃”,忍无可忍愤而起诉

2021 年 7 月 26 日

世界顶级开源象棋引擎被“剽窃”,忍无可忍愤而起诉

近日,国际知名开源象棋引擎 Stockfish 一纸诉讼将商业国际象棋软件ChessBase 告上法庭,指控其多次违反 GPL 许可证。

Stockfish 是谁?


据维基百科介绍,Stockfish 是一款免费且开源的国际象棋引擎,可用于各种桌面和移动平台,于 2004 年发布。



它是世界上最强大的 CPU 国际象棋引擎,并且在大多数国际象棋引擎评级列表中一直排名第一或位于前列。在多届 Top Chess Engine Championship 中,Stockfish 成绩赫赫,经常夺得冠军或亚军名次。比如,它去年 9 月发布的 Stockfish 12 开始支持 NNUE,即可以在 CPU 上快速地运行神经网络。此特性显著改进了 Stockfish,恢复了其作为现有最强大的国际象棋引擎的地位。

开源产品被剽窃


据悉,今年早些时候,Stockfish 发现ChessBase 剽窃了自己的开源产品。2021 年 2 月,ChessBase 发布 Fat Fritz 2.0,售价 99.9 欧元。它基于 Stockfish 修改了几行代码(引擎名称、作者列表和部分参数),增加了一套自称是专有的 NNUE 算法。经过包装便摇身一变,成为自己的原创产品,并且没有遵守开源协议对相应修改了的代码进行开源。


Stockfish 在官方博客文章中表示,“我们发现,ChessBase 向客户隐瞒了其产品当中直接使用 Stockfish 核心技术成果的真实情况。事实上,大多数客户根本不清楚自己付费购买的 Fat Fritz 2 或 Huodini 6 就是两款 Stockfish 的‘魔改’版本。”


Stockfish 称,“ChessBase 一再违反 GPL 核心理念,未能履行向用户告知相关权利的义务。看到许可证中明确列出的注明相应来源、免版税复制 / 修改及分发等权利遭到无情践踏,我们深感痛心。”


据悉,Stockfish 源代码使用的许可证是 GPLv3。根据该协议,如果你发行一个自由程序的副本,无论是免费的还是收费的,你必须将你从上游收到的自由,向下游传递下去。你必须确保他们也可以收到或者找到源代码。你必须向他们展示同样的授权条款,让他们知道他们的权利。


简言之,根据 GPLv3 的要求,ChessBase 在发行软件时需要公开修改的源代码。但是,它并未这样做。

告上法庭


据悉,在一位德国版权法律师的支持下,Stockfish 向法院递交了 GPL 侵权诉讼。在经历长达四个月的漫长诉讼后,Stockfish 取得初步胜利。


ChessBase 的 Fat Fritz 2 DVD 被全面召回、Houdini 6 也遭停售下架。


但是,双方仍未能在庭外和解方面达成共识。


Stockfish 称,“由于 ChessBase 屡次违反许可要求,Stockfish 各主要开发人员决定永久终止向 ChessBase 提供 GPL 许可证。然而,ChessBase 选择忽略这一基本事实,仍然冥顽不灵、继续以原样或经过修改的形式将 Stockfish 纳入其产品当中。因此,为了强制终止授权许可,我们决定正式提起诉讼。”


一直以来,开源领域的剽窃事件层出不穷。这些剽窃事件大致分为两类:


第一类,开发者开源后的软件被他人“魔改”,摇身一变成为自己的开源项目,或者被他人包装成商业产品拿去售卖。


第二类,开源软件创意被剽窃,他人或其他组织推出非常相似的同类型软件。比如,InfoQ 曾报道过,一名开发者用两年的业余时间开发并维护的一个开源项目 AppGet,它被微软剽窃,最终该开源项目被迫终结。

写在最后


在开源行业,如果说开源精神和开源文化是基础,那么以 GPL 许可证为代表的开源协议则是一种保障。一旦这个行业的参与者不遵守规则,那么开源贡献者的利益则势必受损。这显然不利于开源行业的长久发展。

2021 年 7 月 26 日 17:042254
用户头像
万佳 InfoQ编辑

发布了 619 篇内容, 共 234.4 次阅读, 收获喜欢 1578 次。

关注

评论

发布
暂无评论
发现更多内容

占楼

IT蜗壳-Tango

8月日更

你的孩子爱读书吗

箭上有毒

8月日更

面向用户的产品进度汇报会

boshi

项目管理 客户

Django QuerySet 就学那么一点点,一点点就够了

梦想橡皮擦

8月日更

ISO-8601 如何解读

HoneyMoose

【Flutter 专题】67 图解基本约束 Box (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

聊聊Java数据类型的那些事

Bob

Java 后端 8月日更

终于有人把操作系统、网络系统、线程进程、IO模型全部总结出来了

Java~~~

Java 架构 面试 TCP 网络

Spring Boot 整合 Thymeleaf 实例

村雨遥

Java springboot thymeleaf 8月日更

【前端 · 面试 】JavaScript 之你不一定会的基础题(二)

编程三昧

JavaScript 面试 前端 事件 8月日更

SQL的执行计划-->explain

卢卡多多

sql 8月日更

与外部系统的读写交互(八)

数据与智能

flink kafka Cassandra

使用Golang上传文件到MinIO对象存储(一)

liuzhen007

8月日更

在线IP地址查询工具

入门小站

工具

低耦合、高内聚?

escray

学习 极客时间 如何落地业务建模 8月日更

JDK从8升级到11,使用 G1 GC,HBase性能下降20%。JDK 到底干了什么

Summer

Java 学习 程序员 架构 jdk

红黑树的理解与 Java 实现

编程菌

Java 编程 程序员 计算机 技术宅

360搜索宣布下线“明星人气排行榜”:饭圈文化不是洪水猛兽

石头IT视角

腾讯三面:哨兵挂了,Redis还能正常工作吗?

Summer

Java redis 学习 程序员 架构

了,来了!Nacos 2.0的Spring Boot Starter终于来了

Summer

Java 学习 程序员 架构 springboot

在科技圈流行的冥想,为什么没有全民推广?

脑极体

ReentrantLock 中的 4 个坑!

王磊

Java 并发 lock 8月日更

Linux之telnet命令

入门小站

Linux

Java 项目还需要 joda 吗

HoneyMoose

腾讯三面落马+拒网易、CVTE后,字节四面成功拿下offer

编程菌

Java 编程 程序员 面试 计算机

Web框架Gin | Gin 路由

xcbeyond

Go 路由 gin 8月日更

网络攻防学习笔记 Day104

穿过生命散发芬芳

态势感知 网络攻防 8月日更

飞书 + Lua 实现企业级组织架构登录认证

K8sCat

lua openresty 网关 飞书 组织架构

【设计模式】迭代器模式

Andy阿辉

C# 后端 设计模式 8月日更

oeasy教您玩转vim - 16 - # 行内贴靠

o

手撸二叉树之二叉树的中序遍历

HelloWorld杰少

数据结构与算法 8月日更

数据库运维技术发展与展望

数据库运维技术发展与展望

世界顶级开源象棋引擎被“剽窃”,忍无可忍愤而起诉-InfoQ