一、主旨概述
任何法律制度及立体系经常需要协调两个利益冲突,即:公益和私益,著作权领域亦不例外。著作权制度本质上是通过赋予著作权人一定时期对作品的各种优先和垄断性权利(通常可以转为化经济利益)这一方式来鼓励人们创建更多优秀的精神文化产品。传统上对于著作权都存在一定的限制,这种限制无一例外都是授权非商用目的使用者在不妨碍著作权人行使其权利的合理限度内无偿使用其作品(也称“合理使用“)。
但是,这一合理限制在计算机软件著作权领域则有进一步的扩展,表现为:即便是出于商用目的,也存在合理使用原则。
二、 合理使用原则
我国现行《著作权法》第二章第四节“权利的限制“中第二十二条、第二十三明确列举了合理使用(对著作权的限制)的类型,这些使用无一例外都是非商业化的目的,如个人学习、教育、科研、新闻 道、义务教育等。
德国《著作权及相关权利法》(《Gesetz über Urheberrecht und verwandte Schutzrechte》)中第六章” Schranken des Urheberrechts durch gesetzlich erlaubte Nutzungen (译文:基于法律许可而对著作权的限制)“也明确列举了若干种精神内核与我国《著作权法》趋同的合理使用规定,这些包括:44a Vorübergehende Vervielf?ltigungshandlungen(译文:临时的复制) § 45 Rechtspflege und ?ffentliche Sicherheit(译文:司法和公共安全) § 45a Menschen mit Behinderungen (译文:残疾人【使用】)§ 45b Menschen mit einer Seh- oder Lesebehinderung(译文:有视听障碍之人【使用】)§ 46 Sammlungen für den religi?sen Gebrauch (译文:汇编为宗教使用)§ 47 Schulfunksendungen(译文:学校电台广播) § 48 ?ffentliche Reden(译文:公开演讲)等。
《美国版权法》(Copyright Law of the United States)第107条“Limitations on exclusive rights: Fair use“中也明确传统合理使用的若干判断标准,典型的如:” the purpose and character of the use, including whether such use is of a commercial nature or is for nonprofit educational purposes; “,其显然是以使用是否带有商业属性及牟利目的为标准。
以上可见,我国及德、美的著作权方面立法完全与《保护文学和艺术作品伯尔尼公约》在合理使用条款上保持高度一致。然而,在Oracle诉Google Java API侵权一案中,该原则适用的前提明显被突破,亦即:即使在以牟利为目的商业应用,仍然可以适用合理使用原则(fair use)。
三、 oracle诉google案件中对传统合理使用原则的突破
(一) 预备知识
1、什么是Java SE API?
Java是一种在全球范围内得到广泛用、生态非常完美、应用领域非常广、简单易学的一门编程语言。与传统其它编程语言(如C语言、C++语言、C#语言、COBOL语言等)相比,它的独门绝学是:编译一次、到处运行。该特性为程序员和经营者提供了极大的便利,节约了巨大成本。该编程语言可以为各种各样的计算机编写软件,从大型机、PC服务器、笔记本电脑到各种各样的嵌入式设备(如智能手机、工控设备、数字电视、玩具等),用途广泛。Google收购Android后,考虑到Java语言生态好、全球程序员数量多,所以将它移植到Android操作系统中。这个过程类似于:当你要发表一遍文章时,你使用英语发表比使用德语更能得到受众,因为全球懂英语的人数远多于德语。Java语言有三个版本:Java ME、Java SE、Java EE。Java ME用于嵌入式设备,Java SE用于工作站和桌面机,Java EE用于服务器。
API是Application Program Interfac(应用程序函数接口),是一组计算机函数,这些函数可以用来进行数学计算、绘图、播放声音、 络通信等,程序员开发新程序(APP)时,需要调用各种各样的API来编写新程序。把API按一定思路堆积起来形成APP(application,应用程序)的过程,类似于将积木块堆积安装起来形成新玩具的过程。每种编程语言一般都提供给程序一定量的API供程序员调用。
Java SE API就是Java语言提供给程序员调用的函数,里面包括了写一个应用程序需要用到的所有基础功能。如前所述,由于Java语言的使用者(程序员)非常多,所以懂得API的程序自然非常多,具体见下图(2021年1月全球 编程语言排行榜):
这意味着:如果一个企业选择使用Java开发,那么它将很容易招聘到这种程序员,用人成本低,且项目中的技术问题也容易得到解决。
2、一个API的定义包括哪几部分?
一个API的定义包括两部分:声明代码(declaring code)和实现代码(implementing code)。声明代码是用来调用实现代码的入口,在数量比重中,声明代码最多不超过3行。实现代码则可能从1行到几千行甚至上万行都有可能。声明代码表明这个API如何被程序员调用,实现代码则表明这个API如何进行功能操作。
一个熟练的程序员一定会记住许多API声明代码,但不可能也没必要记住API实现代码,API实现代码通常被当作黑匣子,程序员只需要学习如何使用声明代码,即可以调用它编写新程序。
(二)案情介绍
2010年,Oracle花74亿美元收购Sun Microsystems公司(Java的设计者及版权人),此后几个月之内,Oracle向the Northern District of California地区法院对谷歌提起了诉讼,指控后者非法地从Java中复制了约11500行代码到Android操作系统内使用,并认为此行为同时侵犯了其版本及专利,经过约6周聆讯程序,法院驳回了Oracle的专利请求(该请求此后再未进入司法程序)。此后经审判程序,地区法院判决Oralce败诉,理由是:Google复制这些代码中中仅包含部分Java API声明(declaring code),不论这部声明代码是否有创造性,因为Google并没有复制这部分Java API的实现代码(implementing code),相反其自行重新编写了这部分代码,且与实现代码相比,声明代码所占比重完全可以忽略。同时, Java API声明代码是任何一名经过培训的Java程序员必须用到的编码技能,这种代码显然不受版权法保护。
Oracle随后向联邦巡回法院上诉,而联邦巡回法院则判决Oracle胜诉,核心理由是:“[t]here is nothing fair about taking a copyrighted work verbatim and using it for the same purpose and function as the original in a competing platform.”(译文:基于同样的【商业】目的使用,一字不变的把【他人的】受版权保护的作品拿走,并在一同一个竞争平台上按同样功能使用,不构成合理使用。)。的确,事实上Google将Java API中的代码原封不动的复制过去作商业化应用,而且没有任何修改创新,联邦巡回法院的观点认为这是标准的侵权行为。
随后,Google公司上诉到美国联邦最高法院(Supreme Court),后者对此展开近三年的程序处理,随后于2021年4月5日做出判决:Google的行为构成合理使用,不构成侵权。
(三)简要分析
本案的核心焦点是:在商业化应用中以盈利为目的,将它人拥有版本(著作权)的计算机软件部分复制到自己的产品中并发布牟利,是否构成侵权或是合理使用?
1、按传统观点,这的确是标准的侵权行为。
我们都知道,传统上计算机软件盈利的主要模式就是通过以各种形式授权复制副本使用。未经软件版权人/著作权人许可,擅自复制全部或部分计算机软件,不论是源代码还是目标代码均构成侵权。
以我国《计算机软件保护条例》第八条之规定视角,Google的复制行为侵犯了Oracle的复制权、发行权。德国《著作权及相关权利法》亦有异曲同工之规定,该法第69条规定:“Der Rechtsinhaber hat das ausschlie?liche Recht, folgende Handlungen vorzunehmen oder zu gestatten: 1. die dauerhafte oder vorübergehende Vervielf?ltigung, ganz oder teilweise, eines Computerprogramms mit jedem Mittel und in jeder Form. “(译文:权利人独占性地享有对于【计算机程序自行】实施或是授权他人【实施】下列行为的权利:以任何方法和形式,永久地或临时地复制一个计算机程序的全部或一部分),以此视角看,Google在商业应用 中复制Oracle的代码,并发行使用,显然构成侵权。这种行为本质上与未经许可复制它人的文学作品中的一部分或全部并无本质区别。
2、美国联邦最高法院认为Google的行为构成合理使用(fair use),理由如下:
根据《美国版权法》(Copyright Law of the United States)第107条“Limitations on exclusive rights: Fair use“之规定,判断这种行为是否构成合理使用,考虑下列四个因素:
“(1) the purpose and character of the use,including whether such use is of a commercial nature or is for nonprofit educational purposes(2) the nature of the copyrighted work;(3) the amount and substantiality of the portion used in relation to the copyrighted work as a whole; and(4) the effect of the use upon the potential market for or value of the copyrighted work.“,
(1)针对第一个方面:the nature of the copyrighted work;(被复制部分受保护作品的属性)
判决中认为,Google复制的11500行代码中仅包括API声明代码,并不包括实现代码,仅有声明代码根本无法驱动计算机工作。如果要驱动计算机工作则必须有实现代码,单纯有声明代码,完全没任何功能。Google虽然复制了Java SE API的声明代码,但是并没有复制其实现代码,相反,Google是在Oracle Java SE API的声明代码基础上,重新编写了自己的实现代码。故而,Google没有侵权Oracle Java SE API的实现代码权利。同时,实现代码是一个API中最关键且占主要部分的。
至于声明代码,它主要体现了设计者的对API的合理分类、排列思维,这种思维类似于个人物将不同的物品分类放在不同柜子的不同抽屉里,并编写的目录页。它是一种思维体现,问题是美国版权法明示版权不保护思维,故而Google复制这部分Java SE API代码属于思维型,不受版权法保护。
(2)针对第二个方面,the purpose and character of the use,(使用的特征和目的)
判决认为:Google复制这部分声明代码,主要不是因为这部分代码本身具有极大的商业价值及专业性,而是因为考虑到:在全球范围内,有大量的程序员通过自学或培训掌握了这种些API的使用,在Android中引入Java SE API会使得Android更较容易得到更多程序员支持,它们因为熟练掌握Java SE API声明代码而可以直接为Android系统开发程序,无须额外学习,这样Android系统瞬间获取了数量巨大在的程序员资源。
而且,Java SE API之所以如此普遍,有个重要原因是:Sun公司发明Java后,将包括API在内的整个Java软件包全部开源,供 区及商业化公司免费下载学习使用,这是为什么全球有众多程序员和企业选择学习、研究Java的一个重要原因。反面的例子是Microsoft公司的Visual Stdudio系列开发工具,其生态及用户基数显然没有Java多,因为其持续坚持传统闭源的商业化路线,导致其软件昂贵,需要购买,由此限制了其程序员的数量及应用范围。
故而Google所考虑的问题,不仅仅是它自己的私益,客观上也涉公益。对于如果支持Oracle的诉求所带来的危害,判决中这样描述:“Given the costs and difficulties of producing alternative APIs with similar appeal to programmers, allowing enforcement here would make of the Sun Java API’s declaring code a lock limiting the future creativity of new programs. Oracle alone would hold the key.“,也就是说,如果支持Oracle的诉讼请求,那么它将成为整个Java的超级垄断者、独占者,因为API是整个Java开发的基础和程序入口,如果Oracle胜诉,则一定可以得出结论:整个美国所有各行各业的企业都将没有选择地屈服于Oracle的版权大棒之下,而这一大棒不但违背前面开源诚信原则 ,且会损害版权保护的鼓励创新原则。法律首重诚信,其次鼓励创新,更重要的是反对资源垄断。
(3)针对第三个方面,the amount and substantiality of the portion used(复制代码的量和质)
Google复制的Java SE API代码仅占整个Java SE工具的百分之零点以下,且不是核心代码,因为Java SE的核心部分是其JVM及编译器、调试器等,Java API声明代码(注意:不包括实现代码)仅仅是一个简单地声明,它甚至无法驱动计算机工作,它更多像是一个建议而非具体的行动方案或是解决方案,故而其商业价值并不是太大,至于众多的程序员学习使用这套API这一效果本身并不能视作Java SE API本身的价值,而是由于其前期其采取开源免费使用政策,如果它前期不采取这些开源政策,那么不会有这么多程序学习研究Java。
(4)针对第四个方面:the effect of the use upon the potential market(市场影响)
判决中提到,在Sun公司被Oracle收购之前,其曾经试图使用包括Java在内的一系列软件抢占嵌入式设备(智能手机、仪器仪表、家电等)市场,但数次努力均以失败告终。相反Google的Android在嵌入式设备市场相当成功。
再者,Java SE占领的是工作站、服务器市场,而Android(含Java SE API声明代码)占领的是嵌入式设备市场(包括手机在内),两个市场互不冲突,故而Google虽然复制了Java SE API到Android中使用,但没有损害Oracle基于Java SE版权而应有的市场利益。
基于以上四个原因,最终Google胜诉,判决认定其复制部分Java SE API源代码到Android中的行为不构成对Oracle Java SE版权的侵权行为。此外,值得注意的是:在美国最高院审理案件期间,包括IBM、facebook在内的众多大厂商均向法庭提交了法律意见,支持Google的诉讼行为,可谓是舆论一边倒的典型。
3、 判例创新
本案特殊之处在于:它确立了在商业应用环境下也可以存在合理使用的规则。这是对传统合理使用规则的典型突破。而这一判决本身又高度体现了判例法系的法官造法行为,用以解决立法滞后于市场变化的问题。
四、由本案引发的思考
(一) 计算机软件著作权保护的对象
首先,其保护对象应当包括源代码和目标代码(私益)。
多数计算机程序存在形式有两种:源代码和目标代码(二进制),少量编程语言仅有源代码,没有目标代码。显然,这两类代码都是软件著作权保护的具体对象。按这一标准,Google部分复制了Java SE API源代码的行为属于典型的侵权行为,但美国联邦法院却判决其没有侵权行为,支持该判决的客观理由首先不是因为公益大于私益或诚信,而是这段源代码仅是声明代码,它只体现一定的思维,且无法直接驱动计算机工作。由此可以得出一个结论:计算机软件著作权保护的对象绝对不是所有的代码,而应当仅仅是那部分可以驱动计算机工作的那部分代码。
如果一段代码完全不能驱动计算机工作,那么尽管它使用计算机编程语言表达,而对它的保护与对能驱动计算机工作的代码保护显然不同,前者的保护更像是对待传统文学艺术作品的保护。
也就是说:驱动性(驱动计算机系统工作)是其该权利保护对象的必备特征,也正是驱动性的存在,各国在它的保护上,都有特别的规定或情况。我国为此专门制定了《计算机软件保护条例》,德国则是在其《著作权及相关权利法》中专门设置一章关于计算机软件的特别规定,该法第八章明示了关于”计算机程序的特别规定“(Besondere Bestimmungen für Computerprogramme)。美国《版权法》第一百零一条民专门界定了计算机程序的特殊内涵:A “computer program” is a set of statements or instructions to be used directly or indirectly in a computer in order to bring about a certain result。(译文:计算机程序是一组语句或指令,它可以被直接或间接用于让计算机产生某种结果)。注意,该《版权法》中对于其它八种作品并未作特殊定义。源代码语句被翻译成机器指令后,即可以驱动计算机工作,据此,以上定义突出印证了计算机程序的“驱动性”这一特点,同时也表明了计算机软件著作权/版权保护的对象包括statements(源代码中的“语句”)和instructions(目标代码中的“指令”)。
其次,保护对象包括传统的诚信和激励创作(公益)
正是因为计算机软件是一种具有与传统文学艺术类作品不同属性的作品,美国国在1974年成立了National Commission on New Technological Uses of Copyrighted Works (CONTU),该组织专门研究其《版权法》是否适用于计算机软件,后于1978年确定了《版权法》适用于计算机程序的保护,但其同时确立了”版权的保护应当以激励创新为限度“这一原则。
同时,在计算机程序世界版权有另一种分类:开源与闭源。开源的模式通过是让使用者自由下载使用程序,著作权人通过提供服务和技术支持来获利,因此开源与盈利并不冲突,它能较好实现利益平衡。开源的软件如果变成闭源,则不能违背其之前的承诺,此即为诚信 原则。正是因为Java前期开源,才导致众多学习者、使用者,而后期突然要通过版权保护收费,无疑是对前期开源承诺的违背。法律不应当支持这种背信行为,为了保护公益而对私益适当限制有其正当性。
(二)计算机软件保护内容是否应当包括思想
我国传统观点认为计算机程序(软件)主要保护有形载体,不保护其实现的思想,后者需要申请专利。对于著作权/版权只保护载体不保护思维,在《保护文学和艺术作品伯尔尼公约》第二条明确了作品必须固定下来:It shall, however, be a matter for legislation in the countries of the Union to prescribe that works in general or any specified categories of works shall not be protected unless they have been fixed in some material form.(译文:二、本同盟各成员国得通过国内立法规定所有作品或任何特定种类的作品如果未以某种物质形式固定下来便不受保护。),德国《著作权及相关权利法》第六十九条明示了对于软件著作权的保护不及于想法、原理:Der gew?hrte Schutz gilt für alle Ausdrucksformen eines Computerprogramms. Ideen und Grunds?tze, die einem Element eines Computerprogramms zugrunde liegen.(译文【本法授权的】保护不适用于:【设计】计算机程序时基于的那想法、原理。美国版权法第一零二条第b项也有类似规定:In no case does copyright protection for an original work of authorship extend to any idea, procedure, process, system, method of operation, concept, principle, or discovery, regardless of the form in which it is described, explained, illustrated, or embodied in such work。
但是,任何一个计算机程序内一定包括思想,这种思想在专业上称之为“算法”,这种算法具体分为两类:通用算法和非通用算法。而盗用计算机程序有两个角度:一是盗版算法、二是盗版代码。如果软件著作权不保护思想(即:算法),则根本无法防住前面一种盗版,再得,即便是后者,没有一定的思想保护,证明侵权也是存在困难和模糊地带。
而使用专利方法保护计算机软件存在以下严重问题:
1、软件的开发者申请专利,专利的技术材料就必须公开,这是开发者不愿看到的。2、软件开发者申请专利需要支付费用,而且获得专利后每年还需要支付一定的维持费用,从经济角度考虑,不能产生较好经济效益的软件开发者是不会选择专利保护的。3、软件开发者申请专利保护需要符合专利的新颖性、创造性、实用性的条件,符合这些条件的软件在软件产品中还是占少数的。4、专利的申请及审查需要两三年的时间,有些软件市场生命周期较短就不适于专利保护。但是对于系列软件的开发商而言,每一版本的软件虽然市场生命周期不长,版本升级也只是对原有软件的不断完善,软件的核心技术方案是不变的,这类软件还是适合申请专利保护的。[1](参见最高人民法院《浅析计算机软件的著作权与专利权冲突》)
从这一观点出发,Oracle Java SE API实际上体现了一定的设计思维,只是因不满足前述”驱动性“,故无法按计算机软件的方式保护。
五、总结
本案中对于计算机软件的合理使用原则实现了突破,从传统的限于非商用领域延伸至商用领域,是一个大胆的创新。同时,也直接引发了关于计算机软件保护的问题,现行立法应当加入计算机软件著作权/版权的”驱动性“定义和要求,同时应当在专利之外引入对软件算法的独立保护。
作 者 介 绍
于禄
律师
1. 十余年技术工作经验,五年多律师执业经验;
2. 熟悉软件、集成电路(芯片)、互联 、自动化等有关的数字化技术。具有程序员、架构师、硬件工程师、 络工程师等从业经验,曾担任美国Cisco、Oracle及Redhat授权讲师,并作为Linux核心工程师,在德国SUSE(上海)工作一年半。有海外工作背景;
3. 专业领域:专用做与前述技术有关的各种案件,如:买卖合同、尽调技术咨询、技术方案可行性分析、系统安全咨询、专利、计算机犯罪等,会使用德、法等外语。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!