写点什么

视觉中国、死去的天才程序员与版权纠纷

2019 年 4 月 16 日

视觉中国、死去的天才程序员与版权纠纷

从“视觉中国们”谈起,看看在程序的世界里,版权问题的罗生门。即便是在法制健全的社会里,同样有一位入选互联网名人堂的天才程序员因版权问题而献出了自己年轻的生命。中国是一个历史悠久的国家,但中国迈入现代化不过几十年的时间,我们还会看到更多的版权问题出现,也希望相应的机制和法规能够早日完善。


“不敢配图”警告

4 月 10 日,人类史上首张黑洞照片曝光。随之发酵的,却并不是黑洞照片背后的科学理念,而是一家名为“视觉中国”的图片版权公司。


先是有网友发现其疑似通过版权方已承诺可免费使用的黑洞照片牟取私利,接着又有网友发现连中国国旗、国徽、国家领导人等图片素材在“视觉中国”上也被标注版权所有。11 日下午,@共青团中央 官方微博点名“视觉中国”,质问“国旗、国徽的版权也是贵公司的?”



图片版权不属于视觉中国


此后,欧洲南方天文台(ESO)特意回应称:视觉中国(关于黑洞照片)的版权主张不合法,ESO 从未,也不能将他们的图片版权转让给任何其他个人或组织,且视觉中古欧从未就黑洞图片联系过 ESO。


打个不那么恰当的比喻:视觉中国此举像是把遵从开源协议的软件放到自己的版权库内进行二次商业售卖,并对“侵权”行为进行“维权”。(你可以猜猜 InfoQ 有没有解锁过视觉中国的律师函警告)


那么在程序的世界里,版权这个问题又是怎样的呢?


因版权问题而死的天才程序员

Aaron Swartz(亚伦·斯沃茨)是美国程序员、企业家、作家、政治活动者和互联网黑客主义者。他参与开发了 RSS 网上信息源发布格式、Markdown 文本发布格式、知识共享组织、《web.py》网站开发框架,同时是社交媒体 Reddit 的联合创始人。



图片源自纽约时报


2011 年 7 月,他被美国警方逮捕,随后提起刑事诉讼,罪名是非法侵入 JSTOR 论文数据库。根据起诉书描述,他在 2010 年 9 月 24 日——2011 年 1 月 6 日期间,采用各种技术手段,利用 MIT 网络伪造身份,侵入 JSTOR 论文数据库,总共非法下载共计 480 万篇论文,导致 JSTOR 一度瘫痪。由于他不断变换 IP 和 MAC 地址,躲过封锁,JSTOR 无计可施,被迫禁止所有 MIT 用户访问,长达四天。令人惊讶的是,他使用的侵入工具只是一台普通的宏基笔记本电脑。


起诉书称,他获取这些论文的目的,是为了将它们放上文件分享网站。但是,截止被捕时,他还未采取具体行动。为此,他面临最高 35 年的牢狱之灾与 100 万美元的罚款。


他拒绝了联邦检察官提议其在联邦监狱服刑 6 个月的认罪协商,选择出庭。随后他被发现死在其于纽约布鲁克林区的公寓内,自缢而死。他死后,联邦检察官放弃了指控。


2013 年,亚伦·斯沃茨被追授入互联网名人堂。同年七月,MIT 公布了一份长达 160 页的调查报告,报告指出 MIT 在该案中犯了一些错误,“错失了展现我们引以为傲的领导力的机会”,这种领导力基于 MIT 的声望,因为它以“推动网络信息公开及明智处理电脑滥用风险”而闻名。报告还表示,MIT 没有针对他,也没有要求联邦政府起诉、惩罚或监禁。


知名技术博主阮一峰的博客中有写到为什么程序员们对于此案件异常愤怒:


文件包含的论文,都是在 1923 年前发表的,因此属于公共领域。它们理应是全人类的共同财产,但是你却无法自由地得到它们。JSTOR 对每篇文章要价 19 美元,而且只允许单用户在一台计算机上浏览。这实际上是对全人类的偷窃。学术论文本应该允许自由获得,但是大多数论文都被像 JSTOR 这样的守门员,以高额收费的形式阻止传播。尤其不合适的是,论文的原作者实际上并没有因为这样严格的版权限制,而获得收入,更何况发表论文的杂志本来就是免费获得这些论文的。


对于类似 JSTOR 这样的网站,即使是付费下载的论文也不得公开传播,否则就侵犯了它的版权。国内类似网站的用户协议里也有相同性质的规定:“未经明确授权许可,用户不得进行复制、修改、出租、散布或衍生其他作品,或用以商业性目的。”


这样的问题,与“视觉中国们”何其相似?


开源软件与版权纠纷

“没有开源技术,就没有中国软件产业。”这话不假。在中国的软件产业发展进程中,开源的软件给予了很多帮助,很多国内互联网公司所谓自研的技术其实都基于某个开源软件做的魔改。但开源并不等于自由,还有很多问题要考虑。比如,源代码有 bug 害得用户损失惨重如何定责,有人想继续修改源代码重新发布怎么办,涉及到软件专利怎么办……


为了解决这些问题,开源软件往往随源代码包含一个许可协议。现成的开源软件许可协议很多,开源软件中最常用的三个,就是 BSD、MIT 和 Apache v2。


许可证是开源软件在自身的发展过程中出现的一种特殊保护模式,它通过提前签署权利与限制条款来促使开源软件正常有序的发展,它也是开源软件保护自身的核心保护方式。但开源软件许可证同样可能会附带权利不平衡条款,比如 Facebook 的 BSD+ Patents 协议。由此也引发了 2017 年沸反盈天的 React 协议问题。


2015 年,Facebook 给旗下开源软件增加了该条款,React 也随之改为包含这个专利附属条款的 BSD 许可协议。此举当时虽招致一些非议,但并未引起大的风波。直到 2017 年 7 月,Apache 基金会将附带该条款的项目列为 Category X(可看作基金会的黑名单),如果某个开源软件是基于这个黑名单上的许可协议的,那就不能在 Apache 基金会的开源项目中使用。这个决定导致基于 React 的很多 Apache 项目不得不重写。


此举影响下,大批开发者向 Facebook 请愿修改协议,Facebook 不为所动。最终在 WordPress 发声将放弃使用 React 时,Facebook 最终才承诺放弃该协议条款,转而采用 MIT 协议。


类似的问题还有许多,Oracle 与 Google 关于 Android 系统中是否侵权 Java 的官司从 2010 年打到 2018 年,案件判决几经反转,最终判决 Google 败诉,将赔偿 Oracle 88 亿美元。


版权面前,程序员如何自处?

程序员是热爱开源、分享的一群人,但版权方通常站在开源的对立面。程序员喜欢自己写博客,封面配图不注意经常会“侵权”“视觉中国们”,程序员喜欢好看的字体,未经允许亦或不知情下“侵权”了方正字体们。甚至,程序员们写的爬虫,也会因为侵权的问题惹上官司。


随着互联网的普及与发展,国人与企业的版权意识也逐渐增强。越来越多的侵权问题与版权流氓都得到了曝光,但版权之路却依旧任重道远,面对开源项目的版权,程序员应该如何自处呢?


如果你是开源项目的创始人和维护者,那么有一个事情是必须要做的,那就是为你的项目申请专利。


在某些人的固有思维中,“开源项目捐赠之后,相应的专利也会捐赠,申请专利是在做无用功。”其实不然,首个国人主导 Apache 顶级开源项目 Apache Kylin 在项目开源之前就申请了专利,其创始人韩卿曾在采访中表示:“开源项目和专利并不冲突。于开源项目而言,专利不是一个攻击武器而是一个防御武器,如果有人开发了一个同类型的项目且申请了专利,并以此来攻击你,那么你的项目、业务等都会被带入到不应该产生的麻烦中。所以,无论是对个人、公司还是项目,申请专利都会是一个很好的保护措施。”


如果你是互联网资源的使用者和参与者,那么以下三点是需要注意的:


  1. 提高版权意识,慎用来历不明的图片、文章,并注意其有无具体的版权声明;

  2. 加强对开源软件源代码的监控,一旦发现有侵权风险(例如相关源代码曾经发生过专利侵权诉讼),及时采取删除或替换措施;

  3. 在生产、项目中向 leader 同步版权风险,提前规避或购买相关使用版权。


对于程序员可能遇到的版权问题,你还知道哪些?


2019 年 4 月 16 日 10:056977
用户头像
小智 前 InfoQ 主编

发布了 403 篇内容, 共 325.1 次阅读, 收获喜欢 1784 次。

关注

评论 1 条评论

发布
用户头像
cool
2019 年 04 月 16 日 15:39
回复
没有更多了
发现更多内容

爬虫入门经典(十八) | 滑动验证码识别

不温卜火

python 爬虫

前置机器学习(一):数学符号及希腊字母

caiyongji

机器学习

爬虫入门经典(四) | 如何爬取豆瓣电影Top250

不温卜火

python 爬虫

LeetCode题解:198. 打家劫舍,动态规划(不缓存偷盗状态),JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

MyBatis-Plus实现自动填充createTime和updateTime

棉花糖

springboot MyBatisPlus

数据分析实战项目-蛋壳公寓投诉分析

诡途

Python 数据分析 蛋壳公寓

大前端工程师进阶之路,Node全栈为前端带来更多可能

孙叫兽

前端 全栈 Node

波卡生态DeFi系统开发方案

薇電13242772558

区块链 defi

Three.js杂记(二)——绘制点、线、面

空城机

JavaScript 前端 WebGL 3D可视化 three.js

首席AI架构师进阶之旅开启!第4期60位AICA学员硬核开学

百度大脑

百度飞桨 AI架构师

【实战问题】-- 缓存穿透,缓存击穿和缓存雪崩的区别以及解决方案

秦怀杂货店

Java redis 缓存 架构 分布式

新思科技BlackDuck帮助Avira软件公司在保持DevOps速度的同时提升开源安全

InfoQ_434670063458

寻找被遗忘的勇气(二十二)

Changing Lin

3月日更

飞桨刷新分子性质预测榜单,助力AI药物研发

百度大脑

AI 药物研发 百度飞桨

初来乍到,请多关照

空城机

杂记

Git教程 - Git 命令与操作

信码由缰

git DevOps

2021年ONNX开发者大会即将召开

百度大脑

百度飞桨 ONNX

Three.Js杂记(一)——起步

空城机

前端 WebGL 3D可视化 three.js

一文看懂特权访问管理(PAM)

龙归科技

云计算 云存储

手把手教学基于深度学习的遥感影像倾斜框算法训练与分析

cv君

人工智能 深度学习 AI 智能 视觉

2.4 Go语言从入门到精通:条件和循环

xcbeyond

golang Go语言从入门到精通 3月日更

Three.js杂记(三)—— 物体运动

空城机

JavaScript 前端 WebGL 3D可视化 three.js

爬虫入门经典(十五) | 邪恶想法之爬取百度妹子图

不温卜火

python 爬虫

爬虫入门经典(十二) | 一文带你快速爬取豆瓣电影

不温卜火

python 爬虫

前置机器学习(二):30分钟掌握常用Jupyter Notebook用法

caiyongji

机器学习

工作5年的阿里Java程序员,分享从业心得总结与面试笔记分享

周老师

Java 编程 程序员 架构 面试

助力香港成为全球寿命最长的城市,我们如何看医管局的数字化转型?

有只小耳朵

数字化转型 人才培养

如何巧妙的去除数组中的空格?

程序媛观澜

c++ 字符串

爬虫入门经典(七) | 一文带你爬取淘宝电场

不温卜火

python 爬虫

想当程序员,如何判断自己是否适合当前端程序员?

孙叫兽

程序员 前端

它终于来了!

Python测试和开发

Python

视觉中国、死去的天才程序员与版权纠纷-InfoQ