從封閉到開放的副產品-MPL
葛冬梅/文 2005-12-23 發布 2012-03-09 修改
90 年代就開始接觸網際網路的人應該都知道網景通訊家族(Netscape Communicator,註一),這個由網景公司 (Netscape Communication) 所開發的瀏覽器,在網際網路開始風行之初,受到大家的廣泛使用,Netscape Communicator 在推出的時候,一樣是屬於封閉源碼的專屬軟體 (proprietary software)。但是隨著微軟 IE (Windows Internet Explorer) 的興起,Netscape Communicator 優勢不在,因此其期望透過策略的轉變重拾瀏覽器軟體的市場佔有率。這個新的策略就是改採不收取授權金的模式,將 Netscape Communicator 的程式源碼開放出來。
不過這個策略初期的推動是遭逢了一定的困難,因為 Netscape Communicator 中包含所謂的「第三人程式碼 (third-party code)」,這些第三人程式碼是由網景公向自他人處取得授權後方能使用的程式碼,而有的程式碼雖然為網景公司自己擁有,但是因為涉及合作廠商的專門技術 (know how),所以也無法逕以開放源碼的方式釋出來給大眾近用。此外,Netscape Communicator 亦有部份程式碼涉及加解密技術 (cryptography),依當時法規不得輸出美國境外的相關疑慮。面對這樣一個無解的難題,網景公司決定在既有可以掌握的著作權基礎上,另外再寫一個完全開放源碼的瀏覽器,這個瀏覽器就是近年維繫一定規模,並也受到許多使用者愛好的自由開源版本瀏覽器 Mozilla Firefox。網景公司並且為 Mozilla 系列的軟體程式,量身訂做了 MPL 授權條款 (Mozilla Public License),以做為 Mozilla Firefox 以及系列程式所使用的自由開源軟體授權條款。目前最新的版本為 Mozilla Public License 2.0 版。
由於 Mozilla 系列軟體,是由專屬軟體走向自由開放源碼的路子,因為這樣的歷史與時代背景,所以 MPL 授權在運作上具有包容其他授權方式的特性。相對於限制衍生程式必須承繼原程式授權方式的 GPL 授權條款,以及容許使用者自行改變衍生程式授權方式的 BSD 與 MIT 授權條款(註二),MPL 走的是兼容兩種態度的中間路線,對於以 MPL 授權的原程式、使用者改作之後,衍生程式仍然必須承繼 MPL 的授權方式,然而、MPL 同步放寬了對衍生程式的認定範圍,其允許使用者另行撰寫、以獨立檔案加掛方式與 MPL 授權程式互動的程式碼,可以不必然為 MPL 授權方式所拘束,而可以選用其他與 MPL 授權不會產生衝突的其他方式來進行散布,這樣的其他方式可以包括一般專屬軟體的授權方式。所以,只要不違反 MPL 的相關規定,使用者甚至可以在 MPL 授權的元件之上,另外開發一些封閉程式碼的其他元件,然後包裝成為一個軟體專案進行商業運用。這種明示容許一個軟體專案中併存不同授權元件的規則,就是 MPL 授權條款所特有的多重授權 (multiple license) 機制。因此,從授權協調性的層面來說,MPL 算是一個調和 GPL 與 BSD/MIT 兩種授權態度的其他類授權條款。
再者、由於 MPL 初始便是由商業公司所草擬,所以在內容設計上較諸一般的自由開源授權條款多了一些便利商業行為的考量,其除了明示使用者可以用再授權 (sublicense) 的方式散布 MPL 授權軟體外,還有額外的專利授權機制,以及要求不同時期的貢獻者與散布者,將專案的各項授權資訊與提醒,統一彙整於程式根目錄下的純文字說明檔內(舊版 MPL-1.1 律定此說明檔必須以「LEGAL」為其檔名,MPL-2.0 之後則取消指定檔名的規定。)。這些 MPL 重要的授權特點,簡要分述如下:
因為特殊的歷史背景,讓 MPL 在授權內容上兼容並蓄,為建立之初自由開源軟體與商用專屬軟體立場鮮明的僵滯情況,指出了一條折衷之道。也因此 MPL 這樣的授權架構,成為後續許多商用性質的自由開源授權條款的草擬範本,例如過往 Sun Microsystems 在被 Oracle 收購前所發布的自由開源軟體授權條款 CDDL-1.0 (Common Development and Distribution License 1.0),便是以 MPL-1.0 與 MPL-1.1 做比照對象,來進行撰寫的。
註一:初期稱為網景領航員 (Netscape Navigator)。有關網景公司與網景系列瀏覽器歷史背景資料的延伸閱讀,可參照右列網址:http://netscape17.tripod.com/history.htm。
註二:BSD 授權條款之介紹,請參閱:葛冬梅,簡單、開放、幾無限制的 BSD License,自由軟體鑄造場電子報,第 46 期:http://www.openfoundry.org/http:index.php?option=com_content&task=view&id=524&Itemid=56;MIT 授權條款之介紹,請參閱:葛冬梅,來自麻省理工學院的 MIT License,自由軟體鑄造場電子報,第 47 期:http://www.openfoundry.org/index.php?option=com_content&task=view&id=513&Itemid=56。