Login  |  繁體中文
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 原網站預計持續維運至 2021年底,網站內容基本上不會再更動。本網站由 Denny Huang 備份封存。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
Law & Licensing

Open Source Software license

We provide Open Source Software license and legal materials via this page.

 

Law & Licensing

GPL 授權條款有著許多不同於傳統軟體授權方式的相關規定,其中散布程式的時候必須提供源碼的規定,則是影響最大、也最常被違反的一項。這項義務與其他 GPL 條款中所規定的義務一樣,都是透過散布行為而被開啟,也就是說,程式被利用或移轉的方式若不是 GPL 條款所定義的散布行為,散布者就可以自由選擇是否要去遵守其他後續的相關義務規定。因此散布的內涵有著左右 GPL 義務規定是否被啟動的重要地位。

在單純的例子裡,大家都可以輕易理解什麼是散布,例如甲從網路下載了 GPL 程式 A 之後,再將程式 A 拷貝到朋友乙的電腦中,這時候程式 A 就是從甲的手中被散布到了乙的手中,因此依照 GPL 規定,甲負有將程式 A 源碼提供給乙的義務。但是隨著資訊科技的發展與商業交易行為的多樣化,使用者可能在利用銀行自動化設備與租借嵌入式裝置的同時,而間接利用到、或者甚至間接占有了 GPL 程式一段期間,例如前一陣子才停止網路電視服務的壹多傳媒,該服務出租網樂通機上盒給予客戶,客戶只要自行將顯示螢幕與網路線接到機上盒,就可以收看所提供的網路電視節目,這個機上盒為嵌入式的 Linux 作業系統,有利用到很多 GPL 程式,但是壹多媒體在最初時並沒有釋出機上盒的程式源碼,因而引發後續爭議,就是一個典型的例子。這種透過出租產品與提供服務,所造成程式碼移轉的行為,是否也屬於 GPL 所規定的散布程式碼的行為?針對這個問題,本文將會針對目前被廣泛採用的 GPL-2.0 與 GPL-3.0 說明相關規定,並嘗試釐清問題的癥結點,期望可以拋磚引玉的讓大家對這個議題,有一些基本的認識。

近年來隨著手持裝置的熱賣,依附這類裝置運作的線上軟體市集(以下簡稱「軟體市集」)已經成為散佈與販賣軟體的重要管道之一,因而吸引了許多開發者在手持裝置上開發各類的軟體(以下簡稱這類軟體為 "App"),並透過軟體市集來散佈,不過由於軟體市集自有一套運作的規則與機制,其呈現介面也與傳統的桌機、筆電不同,因此若開發者利用自由開源軟體開發 App、並透過軟體市集來散佈時,是有可能會產生授權衝突或違反散佈義務等問題。本文從瞭解軟體市集特有的運作規則與機制開始,說明筆者目前所觀察到的一些問題,同時提出預防這些問題發生的建議措施,供 App 開發者參考之用,希望用以降低未來授權糾紛產生的機率。

 

近年來公眾授權的風潮,已經跨越地理疆界而被適用在不同的國家與文化圈;而其適用的對象,也不再侷限於軟體程式碼,而是跨足到其他的著作權客體,例如在文章、圖片、音樂、影像,與各種藝術領域裡被多元應用的創用CC (Creative Commons),甚至,這樣的模式近年更被延伸至超越著作權的領域,而有開放資料 (Open Data) 方面的運動。這些改變與進展,足以證明民智已開,許多原本閉鎖於大型商業公司、政府機關組織裡的各式軟體與資料,透過公眾釋出的方式,讓群眾能夠以自主的方式進行加值與改作,可說是當代資訊科技的演進,帶給整體人類一同受惠的禮物。然而,各種公眾授權的方式,適用在不同的客體上,必然會有些不同的配置,本文即以現今較已為人熟知的自由開源軟體授權方式為引,透過其與新興 Open Data 授權方式的異同比較,帶讀者一窺 Open Data 授權模式的演變方向,以及新撰成文之 Open Database License v1.0 的重要內容。

GNU Affero General Public License 3.0 (AGPL-3.0) 是自由軟體基金會於 2007 年 11 月 19 日所發佈的一份自由開源軟體授權條款(註一)。這份授權條款與 GPL-3.0 為孿生條款,因為這兩份條款僅在第 13 條有所不同,其餘的規定則一模一樣。但這第 13 條的不同差異處,就讓 AGPL-3.0 與 GPL-3.0 的拘束特性有著很大的分別,這也讓許多提供網路服務的公司對於這份條款避之唯恐不及。但 AGPL-3.0 在使用上真的如此令人恐懼?其中的條款內容究竟如何?在利用自由開源軟體元件的同時,又應該以什麼樣的態度與立場來面對 AGPL-3.0?本文將會針對這些問題一一說明 。

GPL 授權條款制定的目的,是希望人人都可以研究、修改與散佈程式,為了要達到這個目的,取得程式源碼 (Source Code) 是不可或缺的前提要件。因為雖然一位有能力的開發者在拿到目的碼的狀況下,也有可能透過逆向工程來將程式還原到源碼的形式,但這畢竟非常不便,也不是常態,很多情形下也有違法侵權之虞。因此在 GPL 授權條款的規定中,提供程式源碼是一項非常重要的義務,針對程式的研究與修改,透過源碼形式來進行是最為便捷的。而為了讓任何一位拿到程式的後手使用者,都可以順利取得相對應的程式源碼,GPL 設有一套規定散佈者如何提供程式源碼的規定,來保障這些源碼可以持續地被後手取得。

綜合 GPL 二版與三版的規定(註一),筆者歸納出五種散佈者提供程式源碼的方式,這是因為 GPL 規定,「散佈」程式目的碼的人,有同時或是嗣後「提供」程式源碼的義務。此篇文章將給予每一種方式簡短的名稱,用以方便記憶與即時運用。這五種方式在二版與三版有些細部的差異,不過基本上非常相近,因此筆者將以 GPL-2.0 為基礎,來說明兩個版本在提供程式源碼的共通之處,而針對相異之處,將會擇其要者加以解說(註二)。

More Articles...

Page 6 of 26

6