眾所周知,互聯(lián)網(wǎng)公司傾盡心血研發(fā)的計(jì)算機(jī)軟件(計(jì)算機(jī)軟件是指計(jì)算機(jī)程序及其有關(guān)文檔。盡管不符合法律定義,但為方便讀者理解,以下筆者將計(jì)算機(jī)軟件統(tǒng)稱為“源代碼”)是互聯(lián)網(wǎng)企業(yè)的核心競(jìng)爭(zhēng)力,“源代碼”一旦泄露或?qū)?duì)企業(yè)造成毀滅性地打擊。近一段時(shí)間來(lái),筆者陸續(xù)處理了幾起互聯(lián)網(wǎng)公司“源代碼”泄露的案件,在處理案件的過(guò)程中對(duì)企業(yè)的“源代碼”保護(hù)有了更深刻的理解。接下來(lái),筆者將對(duì)“源代碼”保護(hù)的思考寫成系列文章,分別為:“源代碼”的商業(yè)秘密屬性篇、泄露風(fēng)險(xiǎn)篇、侵權(quán)篇及合規(guī)設(shè)計(jì)篇,系列文章將陸續(xù)在公眾號(hào)推送。
本篇為系列文章第四篇:“源代碼”研發(fā)存在對(duì)外侵權(quán)的法律風(fēng)險(xiǎn)。
在前幾篇文章中,筆者主要介紹互聯(lián)網(wǎng)企業(yè)自研的“源代碼”性質(zhì)、泄露風(fēng)險(xiǎn)及其維權(quán)措施,給人感覺(jué)互聯(lián)網(wǎng)企業(yè)的“源代碼”似乎只有被侵權(quán)的風(fēng)險(xiǎn),而無(wú)對(duì)外侵權(quán)的可能性。其實(shí)不然,互聯(lián)網(wǎng)企業(yè)在研發(fā)“源代碼”的過(guò)程中,也存在著對(duì)外侵權(quán)的風(fēng)險(xiǎn)。這種風(fēng)險(xiǎn)來(lái)源于互聯(lián)網(wǎng)企業(yè)的程序員所使用的代碼如果是開(kāi)源代碼,需要受到開(kāi)源代碼所附帶的開(kāi)源許可證的約束。有些開(kāi)源許可證要求使用該開(kāi)源代碼進(jìn)行二次開(kāi)源的,二次開(kāi)源的代碼需要對(duì)外公開(kāi),而不得閉源。一旦閉源,將違反開(kāi)源許可證的規(guī)定,存在侵權(quán)的潛在風(fēng)險(xiǎn)。
一、開(kāi)源運(yùn)動(dòng)的來(lái)龍去脈
在講解“源代碼”為何存在對(duì)外侵權(quán)的潛在風(fēng)險(xiǎn)時(shí),筆者認(rèn)為有必要向讀者介紹下開(kāi)源運(yùn)動(dòng)的來(lái)龍去脈,以便讓讀者對(duì)侵權(quán)風(fēng)險(xiǎn)有更具體的認(rèn)識(shí)。
開(kāi)源運(yùn)動(dòng)最早起源于20世紀(jì)50年代60年代的美國(guó),那時(shí)候計(jì)算機(jī)限于軍用和學(xué)校研究。1965年貝爾實(shí)驗(yàn)室(隸屬于AT&T公司)合作開(kāi)發(fā)出Unix操作系統(tǒng),由于AT&T公司受限于反壟斷的壓力,于1958年和美國(guó)司法部簽訂和解協(xié)議,承諾AT&T公司不進(jìn)入計(jì)算機(jī)領(lǐng)域,于是AT&T公司將Unix操作系統(tǒng)以近乎免費(fèi)的形式授權(quán)各高校使用。
20世紀(jì)70年代80年代,家用電腦開(kāi)始普及,計(jì)算機(jī)市場(chǎng)逐漸爆發(fā),軟件也被列入著作權(quán)登記的范疇。1982年,AT&T公司被拆分為8家公司,意味著前期與商務(wù)部簽署的和解協(xié)議不再生效,AT&T公司順勢(shì)進(jìn)入計(jì)算機(jī)行業(yè),并要求各高校今后須按期付費(fèi)才能使用Unix操作系統(tǒng)。
AT&T公司的上述行為被認(rèn)為違反了“黑客精神”(自由開(kāi)放的精神),以理查德·馬修·斯托曼(Richard Mattew Stallman)的先驅(qū)們,開(kāi)啟了開(kāi)源軟件運(yùn)動(dòng)。他們以重現(xiàn)軟件界合作互助的團(tuán)結(jié)精神為名,在net.unix-wizards新聞組發(fā)表了著名的GNU宣言,目標(biāo)是創(chuàng)建一套完全自由的操作系統(tǒng),(GNU是GNU`s not unix的縮寫)。該套操作系統(tǒng)要遵循如下幾個(gè)原則:第一個(gè)是使用軟件的自由;第二個(gè)是開(kāi)源軟件可根據(jù)使用者的需要進(jìn)行修改;第三個(gè)是可重新分發(fā)拷貝,與他人分享的自由;第四個(gè)改進(jìn)程序,為使他人受益而散發(fā)軟件的自由。
在理查德·馬修·斯托曼(Richard Mattew Stallman)等人的共同努力下,Linux操作系統(tǒng)應(yīng)運(yùn)而生,并對(duì)外免費(fèi)開(kāi)源使用。受開(kāi)源運(yùn)動(dòng)的影響,目前有不少軟件都做了開(kāi)源,但這些軟件在開(kāi)源的同時(shí),也規(guī)定程序員如果要使用這些開(kāi)源軟件必須遵照該開(kāi)源軟件所附的開(kāi)源許可證的要求,例如修改的地方需要放置修改說(shuō)明;新增代碼需要再次開(kāi)源等。
二、開(kāi)源許可證的類型
根據(jù)上文所述,當(dāng)前有不少開(kāi)源軟件在允許他人使用時(shí)要求他人遵循開(kāi)源許可證上的要求。經(jīng)研究,筆者總結(jié)目前市面上幾種開(kāi)源許可證的類型,并對(duì)此作簡(jiǎn)單的分析。
實(shí)際上開(kāi)源許可證是由開(kāi)放源代碼促進(jìn)會(huì)(open source Initiative,簡(jiǎn)稱OSI)的組織頒發(fā)的,目前市面上經(jīng)過(guò)該組織認(rèn)證的許可證有83種,但80%的開(kāi)源軟件使用的許可證不超過(guò)10種,開(kāi)源許可證的類型主要就是上圖所示的這六種。
從上圖可以看出,MIT許可證應(yīng)該是六種許可證類型中最寬松的許可證了。實(shí)際上,MIT許可證也是市面上最受歡迎的許可證,有接近一般的開(kāi)源軟件都采用MIT許可證。使用MIT許可證的開(kāi)源軟件允許閉源,只需要滿足兩個(gè)條件:第一、必須明確指出該軟件的版權(quán)人;第二、必須包含MIT的License原文。
BSD許可證與MIT唯一的區(qū)別是它不能使用原始創(chuàng)作者及貢獻(xiàn)者的信息做二次宣傳,比如我們使用了谷歌BSD許可的開(kāi)源軟件改造之后做成自己的軟件,不能使用谷歌及二次開(kāi)源者進(jìn)行促銷宣傳。
Apache許可證則允許永久授權(quán)他人版權(quán)和專利權(quán),但商標(biāo)權(quán)仍歸屬Apache許可證所有人。另外,根據(jù)上圖所示,Apache許可證要求程序員在每次修改及每個(gè)修改處都標(biāo)注清楚修改人,修改內(nèi)容和修改時(shí)間。
GPL許可證應(yīng)該算是上述許可證中最嚴(yán)格的一種了。GPL許可證要求使用該軟件的必須再次開(kāi)源,并且二次開(kāi)源的軟件必須再使用GPL許可證,以保持開(kāi)源的持續(xù)性和穩(wěn)定性。此類典型的軟件即是上文提及的Linux,迫于GPL的規(guī)定,Linux的所有變種,比如Redhat,Centos,Ubuntu等都必須免費(fèi)開(kāi)源。
LGPL許可證跟GPL許可證類似,但該許可證屬于弱傳染性的許可證,它規(guī)定通過(guò)類庫(kù)引用的方式使用開(kāi)源軟件,則我們的軟件可以不用開(kāi)源,這樣的話商業(yè)軟件可以使用LGPL軟件,且不用開(kāi)源自己的代碼。[1]Mozilla許可證和LGPL許可證類似,也是屬于弱傳染性的許可證。
三、開(kāi)源許可證的法律效力
根據(jù)前文的分析,我們知道市面上開(kāi)源軟件大抵都附有開(kāi)源許可證的要求,且不同的開(kāi)源許可證有不同的限制要求。實(shí)際上,該開(kāi)源許可證類似于我們第一次注冊(cè)淘寶賬號(hào)時(shí)所附帶的以彈窗形式或者鏈接形式提示用戶注意閱讀的注冊(cè)協(xié)議。對(duì)于普通人來(lái)說(shuō),多數(shù)人都不會(huì)閱讀冗長(zhǎng)乏味的電子協(xié)議,況且大部分的開(kāi)源許可證都是英文協(xié)議,更加深了程序員閱讀協(xié)議的障礙。那么,該類開(kāi)源許可證是否具有法律上的拘束力呢?實(shí)際上開(kāi)源許可證在美國(guó)已經(jīng)得到了法院的判決支持。
2008年Bob Jacobsen V. Matt Katzer 案件中[2],鮑勃·雅各布森(Bob Jacobsen )和其團(tuán)隊(duì)開(kāi)發(fā)了?個(gè)名為JMRI (Java Modell RailroadInterface) 的模型?車控制軟件,并把它放在了著名的開(kāi)源軟件?站Source Forge 上供公眾免費(fèi)下載。JMRI使用了Artistic 開(kāi)源許可協(xié)議。該許可證允許他?自由的復(fù)制,分發(fā)和修改軟件,但必須注明原作者的名字并說(shuō)明源代碼來(lái)源,將所開(kāi)發(fā)的新版本軟件放在指定的開(kāi)源?站上供公眾下載,以及在軟件包中說(shuō)明該版本軟件與雅各布森開(kāi)發(fā)的JMRI標(biāo)準(zhǔn)版之間的區(qū)別等等。之后,該項(xiàng)目的部分源代碼被馬特·卡澤(Matt Katzer )與其公司KAMIND并?了其開(kāi)發(fā)的產(chǎn)品“Decoder Commander”中,但卡澤和KAMIND并沒(méi)有遵循Artistic 許可證的條款。基于這些理由,雅各布森于2006年向舊??聯(lián)邦法院提起了訴訟,控告卡澤與KAMIND公司侵犯了其著作權(quán)。此外,他還向法院提出了臨時(shí)禁令的申請(qǐng),要求法院下令禁?卡澤與KAMIND繼續(xù)發(fā)布、銷售侵害著作權(quán)的產(chǎn)品。
法院認(rèn)為,該案的核?問(wèn)題在于卡澤和KAMIND違反的條款究竟是許可的條件(condition),還是合同上的契約(covenant)。法院發(fā)現(xiàn),Artistic許可所使用的表述?式清楚地表明了其條款構(gòu)成復(fù)制,修改和發(fā)布該軟件的條件(如使用“provided that ”等)。同時(shí),這些條件對(duì)于使版權(quán)所有者能夠保留從下游用戶的作品中獲益的能??關(guān)重要(通過(guò)要求修改或分發(fā)該軟件的用戶保留對(duì)源?件的引用,其他用戶就可以從“下游”的發(fā)布中了解到“上游”項(xiàng)目,進(jìn)?參與到JMRI的改良?作中)。雖然許可?僅僅是要求被許可?遵循Artictic許可的條款(包括附上版權(quán)聲明等),?不是向被許可?收取許可使用費(fèi),這種?式有權(quán)得到同樣的法律認(rèn)可。因此,在沒(méi)有版權(quán)聲明和未標(biāo)注對(duì)原始?件的修改的情況下修改和分發(fā)受版權(quán)保護(hù)的材料的?為超出了Artistic許可的范圍,因此可能構(gòu)成侵犯版權(quán)。
實(shí)際上,開(kāi)源許可證的法律效力不僅在美國(guó)得到了法院的認(rèn)可,中國(guó)“柚子(北京)移動(dòng)技術(shù)有限公司等與數(shù)字天堂(北京)網(wǎng)絡(luò)技術(shù)有限公司侵犯著作權(quán)糾紛案”中,法院也側(cè)面認(rèn)可了開(kāi)源許可證GPL協(xié)議的法律效力:“根據(jù)GPL協(xié)議的相關(guān)規(guī)定,GPL協(xié)議的許可客體是在GPL協(xié)議許可下批準(zhǔn)的受版權(quán)保護(hù)的程序以及基于該程序的衍生產(chǎn)品或修訂版本。對(duì)于原告涉案三個(gè)插件而言,在其所處文件夾中并無(wú)GPL開(kāi)源協(xié)議文件,而HBuilder軟件的根目錄下亦不存在GPL開(kāi)源協(xié)議文件的情況下,盡管HBuilder軟件其他文件夾中包含GPL開(kāi)源協(xié)議文件,但該協(xié)議對(duì)于涉案三個(gè)插件并無(wú)拘束力,據(jù)此,涉案三個(gè)插件并不屬于該協(xié)議中所指應(yīng)被開(kāi)源的衍生產(chǎn)品或修訂版本,二被告認(rèn)為原告軟件為開(kāi)源軟件的相關(guān)抗辯理由不能成立。”
四、總結(jié)
綜上所述,互聯(lián)網(wǎng)企業(yè)的程序員所使用的代碼如果是開(kāi)源代碼,需要受到開(kāi)源代碼所附帶的開(kāi)源許可證的約束。市面上最常見(jiàn)的開(kāi)源許可證主要有MIT許可證、BSD許可證、Apache許可證、GPL許可證、Mozilla許可證和LGPL許可證,不同的許可證有不同的約束要求,且開(kāi)源許可證的法律效力已被美國(guó)法院正面認(rèn)可,中國(guó)法院也從側(cè)面認(rèn)可了開(kāi)源許可證的法律效力。因此,如果互聯(lián)網(wǎng)企業(yè)的程序員使用了GPL許可證、Mozilla許可證或LGPL許可證進(jìn)行二次開(kāi)源,開(kāi)源后選擇閉源并采取保密措施進(jìn)行保護(hù),則違反了開(kāi)源許可證的要求,有侵權(quán)的潛在風(fēng)險(xiǎn)。
注釋:
[1] 參見(jiàn)《漫談開(kāi)源許可證》一文,訪問(wèn)時(shí)間:2020年1月3日:
https://mp.weixin.qq.com/s/rZ5BMvot8hFJTrRYmvhTFQ。
[2] 參見(jiàn)顧紫翚:《影響互聯(lián)?發(fā)展的 20 個(gè)?案》