Geek
在安卓系统中复制Java的API,谷歌侵犯了甲骨文的版权吗
十多年前,谷歌重写了Java编程语言,并将其作为Android操作系统的部分根基。Java的所有者甲骨文于2010年起诉Google侵犯其版权。本月晚些时候,美国最高法院将开庭审理这一起史诗级的版权纠纷案;无论结果如何,都将对整个软件行业产生巨大影响。Google或损失数十亿美元。
谷歌表示,它没有做错任何事情。版权法明确将“系统”和“操作方法”从版权保护中排除。 搜索巨人争辩说,它模仿Java的方面(函数名称,参数类型等)完全适合上述例外。谷歌还认为,版权的合理使用原则允许这种。
此案正受到软件行业的密切关注。微软和IBM等公司已经警告说,甲骨文的立场可能会给整个行业带来混乱。他们认为,将复制API的行为视为侵权不仅会给许多软件公司带来法律上的麻烦,而且对客户也不利。
软件公司一直在复制其竞争对手产品的软件接口(术语称为应用程序编程接口API)。这使得不同公司软件产品可以兼容并相互调用。因此客户购买一款编程平台,写出的程序可以移植到另一个平台上使用——意味着为客户降低了成本,也降低了软件初创公司的进入门槛,因为如果客户知道并新软件具有兼容性,会更乐于购买。
如果说哪家软件公司最了解复制其它平台API的重要性,那就是Oracle。毕竟,Oracle在1970年代就开始销售基于当时创新性的结构化查询语言(SQL)的数据库,而SQL由IBM发明,同时Oracle似乎没有获得使用SQL的许可。
不过甲骨文的发言人不同意把SQL与Java放到放到一起比较。她在周二的一封电子邮件中写道:“它们大前提就不同,等于在比较苹果和花椰菜,同时也与本案完全无关。”
当谷歌在2000年代中期开始研究Java时,Java的版权归Sun Microsystems所有。到2010年甲骨文收购Sun。2005年,谷歌与Sun达成了许可协议。 Google坚称它从未打算购买Java的API许可版权,因为(在谷歌看来)API本身不具备版权资格。但是谷歌表示,最终两家公司达成了临时性的协议,先向Sun支付2800万美元,购买与Java有关的专利,Java的商标和其他资产。
但是,谷歌声称“谈判因与金钱无关的问题破裂了”。谷歌表示,Sun寻求对Android平台的控制。因此谷歌决定在没有Sun许可的情况下构建自己的Java版本。
谷歌完全复制了6088个Java函数的名称,参数类型和预期的输出。但是并没有复制实现函数功能的代码。取而代之的是,谷歌的工程师从头重新编写了这些功能。
甲骨文当初推出数据库的时候,使用SQL全部的关键字和函数。
目前看,两者唯一的区别是,谷歌复制了已经上市的商业软件的API,而甲骨文使用的是IBM当时还在测试期的SQL。
美国最高法院关注的不是原被告双方具体的对错,它受理的原则是通过案件界定法律的适用范围,诠释立法的出发点,同时消弭法律条文之间可能存在的矛盾。目前尚不清楚,为何新的版权法规将API列入保护。
从根本上说,API是一种在不同程序之间通信的语言。成熟的计算机语言往往比其他API具有更复杂的语法规则。但是,可能具有版权的元素(关键字,参数类型,语法规则)相似。如果常规API中的功能名称可以受版权保护,则计算机语言中的关键字也可能也受版权保护。其中包括SQL关键字,例如“select”,“from”和“where”。
本文译自 arstechnica,由 majer 编辑发布。