新聞中心
作為一個(gè)開(kāi)發(fā)者,如果你打算開(kāi)源自己的代碼,千萬(wàn)不要忘記,選擇一種開(kāi)源許可證(license)。

公司主營(yíng)業(yè)務(wù):網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站設(shè)計(jì)、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶(hù)真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶(hù)帶來(lái)驚喜。成都創(chuàng)新互聯(lián)公司推出大悟免費(fèi)做網(wǎng)站回饋大家。
許多開(kāi)發(fā)者對(duì)開(kāi)源許可證了解很少,不清楚有哪些許可證,應(yīng)該怎么選擇。本文介紹開(kāi)源許可證的基本知識(shí),主要參考了 OpenSource.com (1,2)。
一、什么是開(kāi)源許可證
開(kāi)源許可證是一種法律許可。通過(guò)它,版權(quán)擁有人明確允許,用戶(hù)可以免費(fèi)地使用、修改、共享版權(quán)軟件。
版權(quán)法默認(rèn)禁止共享,也就是說(shuō),沒(méi)有許可證的軟件,就等同于保留版權(quán),雖然開(kāi)源了,用戶(hù)只能看看源碼,不能用,一用就會(huì)侵犯版權(quán)。所以軟件開(kāi)源的話(huà),必須明確地授予用戶(hù)開(kāi)源許可證。
二、開(kāi)源許可證的種類(lèi)
目前,國(guó)際公認(rèn)的開(kāi)源許可證共有80多種。它們的共同特征是,都允許用戶(hù)免費(fèi)地使用、修改、共享源碼,但是都有各自的使用條件。
如果一種開(kāi)源許可證沒(méi)有任何使用條件,連保留作者信息都不需要,那么就等同于放棄版權(quán)了。這時(shí),軟件可以直接聲明進(jìn)入"公共領(lǐng)域"(public domain)。
根據(jù)使用條件的不同,開(kāi)源許可證分成兩大類(lèi)。
- 寬松式(permissive)許可證
- Copyleft 許可證
三、寬松式許可證
3.1 特點(diǎn)
寬松式許可證(permissive license)是最基本的類(lèi)型,對(duì)用戶(hù)幾乎沒(méi)有限制。用戶(hù)可以修改代碼后閉源。
它有三個(gè)基本特點(diǎn)。
(1)沒(méi)有使用限制
用戶(hù)可以使用代碼,做任何想做的事情。
(2)沒(méi)有擔(dān)保
不保證代碼質(zhì)量,用戶(hù)自擔(dān)風(fēng)險(xiǎn)。
(3)披露要求(notice requirement)
用戶(hù)必須披露原始作者。
3.2 常見(jiàn)許可證
常見(jiàn)的寬松式許可證有四種。它們都允許用戶(hù)任意使用代碼,區(qū)別在于要求用戶(hù)遵守的條件不同。
(1)BSD(二條款版)
分發(fā)軟件時(shí),必須保留原始的許可證聲明。
(2) BSD(三條款版)
分發(fā)軟件時(shí),必須保留原始的許可證聲明。不得使用原始作者的名字為軟件促銷(xiāo)。
(3)MIT
分發(fā)軟件時(shí),必須保留原始的許可證聲明,與 BSD(二條款版)基本一致。
(4)Apache 2
分發(fā)軟件時(shí),必須保留原始的許可證聲明。凡是修改過(guò)的文件,必須向用戶(hù)說(shuō)明該文件修改過(guò);沒(méi)有修改過(guò)的文件,必須保持許可證不變。
四、Copyleft 許可證
4.1 Copyleft 的含義
Copyleft 是理查德·斯托曼發(fā)明的一個(gè)詞,作為 Copyright (版權(quán))的反義詞。
Copyright 直譯是"復(fù)制權(quán)",這是版權(quán)制度的核心,意為不經(jīng)許可,用戶(hù)無(wú)權(quán)復(fù)制。作為反義詞,Copyleft 的含義是不經(jīng)許可,用戶(hù)可以隨意復(fù)制。
但是,它帶有前提條件,比寬松式許可證的限制要多。
如果分發(fā)二進(jìn)制格式,必須提供源碼
修改后的源碼,必須與修改前保持許可證一致
不得在原始許可證以外,附加其他限制
上面三個(gè)條件的核心就是:修改后的 Copyleft 代碼不得閉源。
4.2 常見(jiàn)許可證
常見(jiàn)的 Copyleft 許可證也有四種(對(duì)用戶(hù)的限制從***到最弱排序)。
(1)Affero GPL (AGPL)
如果云服務(wù)(即 SAAS)用到的代碼是該許可證,那么云服務(wù)的代碼也必須開(kāi)源。
(2)GPL
如果項(xiàng)目包含了 GPL 許可證的代碼,那么整個(gè)項(xiàng)目都必須使用 GPL 許可證。
(3)LGPL
如果項(xiàng)目采用動(dòng)態(tài)鏈接調(diào)用該許可證的庫(kù),項(xiàng)目可以不用開(kāi)源。
(4)Mozilla(MPL)
只要該許可證的代碼在單獨(dú)的文件中,新增的其他文件可以不用開(kāi)源。
五、常見(jiàn)問(wèn)題
本節(jié)回答一些開(kāi)源許可證的常見(jiàn)問(wèn)題。
5.1 什么叫分發(fā)(distribution)?
除了 Affero GPL (AGPL) ,其他許可證都規(guī)定只有在"分發(fā)"時(shí),才需要遵守許可證。換言之,如果不"分發(fā)",就不需要遵守。
簡(jiǎn)單說(shuō),分發(fā)就是指將版權(quán)作品從一個(gè)人轉(zhuǎn)移到另一個(gè)人。這意味著,如果你是自己使用,不提供給他人,就沒(méi)有分發(fā)。另外,這里的"人"也指"法人",因此如果使用方是公司,且只在公司內(nèi)部使用,也不需要遵守許可證。
云服務(wù)(SaaS)是否構(gòu)成"分發(fā)"呢?答案是不構(gòu)成。所以你使用開(kāi)源軟件提供云服務(wù),不必提供源碼。但是,Affero GPL (AGPL) 許可證除外,它規(guī)定云服務(wù)也必須提供源碼。
5.2 開(kāi)源軟件的專(zhuān)利如何處理?
某些許可證(Apache 2 和 GPL v3)包含明確的條款,授予用戶(hù)許可,使用軟件所包含的所有專(zhuān)利。
另一些許可證(BSD、MIT 和 GPL v2)根本沒(méi)提到專(zhuān)利。但是一般認(rèn)為,它們默認(rèn)給予用戶(hù)專(zhuān)利許可,不構(gòu)成侵犯專(zhuān)利。
總得來(lái)說(shuō),除非有明確的"保留專(zhuān)利"的條款,使用開(kāi)源軟件都不會(huì)構(gòu)成侵犯專(zhuān)利。
5.3 什么是披露要求?
所有的開(kāi)源許可證都帶有"披露要求"(notice requirement),即要求軟件的分發(fā)者必須向用戶(hù)披露,軟件里面有開(kāi)源代碼。
一般來(lái)說(shuō),你只要在軟件里面提供完整的原始許可證文本,并且披露原始作者,就滿(mǎn)足了"披露要求"。
5.4 GPL 病毒是真的嗎?
GPL 許可證規(guī)定,只要你的項(xiàng)目包含了 GPL 代碼,整個(gè)項(xiàng)目就都變成了 GPL。有人把這種傳染性比喻成"GPL 病毒"。
很多公司希望避開(kāi)這個(gè)條款,既使用 GPL 軟件,又不把自己的專(zhuān)有代碼開(kāi)源。理論上,這是做不到的。因?yàn)?GPL 的設(shè)計(jì)目的,就是為了防止出現(xiàn)這種情況。
但是實(shí)際上,不遵守 GPL,最壞情況就是被起訴。如果你向法院表示無(wú)法履行 GPL 的條件,法官只會(huì)判決你停止使用 GPL 代碼(法律上叫做"停止侵害"),而不會(huì)強(qiáng)制要求你將源碼開(kāi)源,因?yàn)椤栋鏅?quán)法》里面的"違約救濟(jì)"沒(méi)有提到違約者必須開(kāi)源,只提到可以停止侵害和賠償損失。
網(wǎng)頁(yè)名稱(chēng):開(kāi)源愛(ài)好者必看!開(kāi)源許可證基礎(chǔ)知識(shí)掃盲
轉(zhuǎn)載來(lái)源:http://fisionsoft.com.cn/article/cogiddo.html


咨詢(xún)
建站咨詢(xún)
