内容字号:默认大号超大号

段落设置:取消段首缩进段首缩进

字体设置:切换到微软雅黑切换到宋体

业界资讯软件之家
Win10之家WP之家
iPhone之家iPad之家
安卓之家数码之家
评测中心智能设备
精准搜索请尝试:精确搜索

为了不让代码“作恶”,能否将道德条款纳入开源许可证?

2019-9-30 17:13:20来源:开源中国作者:xplanet责编:骑士评论:

开源开发者Seth Vargo发现Chef公司最近与ICE(美国移民和海关执法局)签订了合同后,进行删库抗议,从Chef DevOps中撤回了他的开源项目Chef Sugar。后来 Chef公司表示明年不再续签合同。然而事情并未就此而止,这引起了人们对开源道德层面上的关注。有行动者打出#NoTechForICE的口号,并已拟好一份 Hippocratic License,要求将道德条款添加至开源许可证中。

Hippocratic License建立在对 MIT license的修改之上,作者 Coraline Ada Ehmke 介绍该许可证“专门禁止使用开放源代码软件危害他人”。同时,她还呼吁修改开源定义(The Open Source Definition)中第5和第6两条“非歧视”条款。

Ehmke表示,长期以来,软件开发人员已经与自己编写的代码造成的后果相脱离,但实际上,“我们创建的软件对我们所生活的世界具有真正而持久的影响”。她认为,政治和软件纠缠不清,所有技术本质上都是政治性的,不存在所谓中立立场。如果这些情况伤害到他人,我们应该做些什么?为此,她希望能够用开源许可证来进行规制。

开源倡导组织(Open Source Initiative,OSI)迅速驳斥了Ehmke的做法。他们在Twitter上写道:“Hippocratic Licence 的简介可能会使某些人认为该许可证是开源许可证,根据 Hippocratic Licence分发的软件是开源软件。但两者都不是,我们要求您修改语言以消除混淆。”

Ehmke回击:“OSI和FSF(自由软件基金会)不是‘什么是开源’和‘什么是自由软件’的真正仲裁者。我们才是”。随后她补充说,当前的开源结构无法禁止自己的劳动成果被ICE这样的组织使用,这不是一个开源许可证的问题,而是开源的问题。

先把Twitter上的争吵放在一边,我们来谈谈道德准则是否能够被纳入开源许可证。

这并不是什么新鲜之事。例如,2009年的Exception General Public License(eGPL)就曾尝试在GPLv2上发挥作用,试图禁止诸如军事用户之类的“例外”使用其代码。最终失败了。

诸如JSON license之类的其他许可证也鲜为人知,它注明“该软件应用于善良,而非邪恶”,但没有人强制执行。

今年伴随 996.ICU运动出现的 Anti-996协议也可以说是基于道德层面。专门研究开源软件许可的律师Heather Meeker认为,“它已经实现了重要目标,那就是要引起人们对此事的关注”。但作为开源许可证,它还存在问题,因为“许可证中的道德条款不能用来强迫被许可人,从法律的角度来看,它们更多是一种观点的表达,而不是用于控制被许可人行为的有效法律工具”。

关于开源许可证,开源法律专家、哥伦比亚大学法学教授埃本·莫格伦(Eben Moglen)指出,根据FSF对自由软件的定义,对道德进行要求的许可证将违反其中有关 Freedom zero 的规定。Freedom zero即出于任何目的运行程序的权利,它在四项自由权力中排在首位。

顶尖技术律师事务所和开源法律专家Gesmer Updegrove的创始合伙人Andrew补充说,“从广义上讲,许可人可以在许可证中包含任何他想要的条件。但是,这种限制不能包含在声称符合OSI开源定义的文档中”。

具体来讲,又回到了上述开源定义(The Open Source Definition)中的第6条“不歧视领域”:该许可证不得限制任何人在特定领域内使用该程序。

Andrew解释,这样做的理由是“禁止‘不允许开源软件在商业上使用’的行为。我们希望商业用户加入我们的社区,而不是被排斥在社区之外”。顺便说一下,这是自由软件和开源软件之间的核心区别之一。

“你可以制订‘禁止使用’条款,并要求被许可方在任何下游许可中都包含类似术语”,但在现实中这是难以执行的。Andrew举了个例子:“假设按照通常的开源方式发布代码,那么很快将会出现许多副本,而你几乎无法追溯所有副本。如果代码被捆绑在某个你认为是有害的商业产品中,你也无从得知。”

软件自由保护组织(Software Freedom Conservancy)执行董事Karen M. Sandler也提出了自己的观点,在他看来,有选择地保留软件自由是不合适的,而且这些道德许可证会引发执行问题。更重要的是,还可以通过其他方式达成同样的目标。Sandler建议可以为开发人员建立道德社会,或通过参与政治程序来禁止不法行为。

对于将道德条款纳入软件许可证中,Sandler再次强调这不是那么实际,毕竟“锤子既可以用作建筑工具,也可以用作谋杀的武器。”

相关文章

关键词:开源代码

IT之家,软媒旗下科技门户网站 - 爱科技,爱这里。

Copyright (C)RuanMei.com, All Rights Reserved.

软媒公司版权所有