Top Banner
GPLv3 GPLv3
31

GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Dec 27, 2015

Download

Documents

Laura Arnold
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

GPLv3GPLv3

Page 2: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

事件事件 Mar 6, 2003, SCO Mar 6, 2003, SCO 控告 控告 IBM IBM 未經授權將 未經授權將 SS

CO CO 的 的 Unix Unix 程式碼用於 程式碼用於 LinuxLinux Jan 16, 2006, Jan 16, 2006,

GNU GENERAL PUBLIC LICENSE Version GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft3 Discussion Draft (Draft1) (Draft1)

Jul 27, 2006, (Draft2)Jul 27, 2006, (Draft2)

Page 3: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

GPLv2 GPLv2 的挑戰的挑戰 GPLv2 GPLv2 已過十五年,某些地方造成混淆。已過十五年,某些地方造成混淆。

– 灰色地帶灰色地帶 GPL’ed programs links to non-GPL’ed programsGPL’ed programs links to non-GPL’ed programs Linux kernel moduleLinux kernel module

– 逃避 逃避 GPLv2GPLv2

數位版權管理 數位版權管理 (DRM, Digital Rights Manage(DRM, Digital Rights Management)ment)

Web Application Web Application 或是 或是 server-side server-side 的應用 的應用

Page 4: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

逃避 逃避 GPLv2 GPLv2

Dynamic Linking/ModificationsDynamic Linking/Modifications Self-modifying codeSelf-modifying code LayeringLayering GeneratorGenerator Cryptic One-way hashingCryptic One-way hashing Obfuscator(Obfuscator( 反編譯器、混淆器反編譯器、混淆器 )) ROM-izedROM-ized Out-of-Date source codeOut-of-Date source code

Page 5: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

ExampleExample

SourceSource– #include <stdio.h>#include <stdio.h>– int main()int main()– {{

/* 9008673e-1f33-47be-90f4-1639e09861d2 */ /* 9008673e-1f33-47be-90f4-1639e09861d2 */ return 0; return 0;

– } }

Page 6: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Example (cont.)Example (cont.)

Compile and runCompile and run– $ gcc-evil -o hello hello.c$ gcc-evil -o hello hello.c– $ ./hello$ ./hello– Hello World! Hello World!

"Obfuscated GCC Code Generation Frame"Obfuscated GCC Code Generation Framework" (work" ( 簡稱 簡稱 OGCGF) by JservOGCGF) by Jserv

Page 7: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

數位版權管理數位版權管理 必須在指定電腦或播放機才能播放 必須在指定電腦或播放機才能播放 必須在特定的日期前才能播放 必須在特定的日期前才能播放 播放的次數 播放的次數 傳輸到播放機的次數 傳輸到播放機的次數 燒錄燒錄到到光碟光碟的次數 的次數 以上限制的混合 以上限制的混合

Page 8: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

數位版權管理數位版權管理 DRM (Digital Rights Management)DRM (Digital Rights Management) DMCADMCA Need machine supportNeed machine support

– TivoizationTivoization Incoporates software under the terms of a copyleft soIncoporates software under the terms of a copyleft so

ftware license, but uses hardware to prevent users frftware license, but uses hardware to prevent users from running modified versions of the software on that om running modified versions of the software on that hardware.hardware.

Page 9: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

GPLv3 key pointGPLv3 key point

Clearing things upClearing things up DRMDRM From distribution to propagationFrom distribution to propagation Patent retaliationPatent retaliation New provisions and license compatibilityNew provisions and license compatibility

Page 10: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Clearing Things UpClearing Things Up

Term definitionTerm definition– Source codeSource code– Objective codeObjective code– System librariesSystem libraries– Corresponding sourceCorresponding source

Page 11: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Term DefinitionTerm Definition

Source codeSource code– Preferred form of the work for making Preferred form of the work for making

modifications to itmodifications to it

Objective codeObjective code– Any non-source version of workAny non-source version of work

Page 12: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Term Definition (cont.)Term Definition (cont.)

““System libraries” include every subunit:System libraries” include every subunit:– (a) the identical subunit is normally included as (a) the identical subunit is normally included as

an adjunct in the distribution of either a major an adjunct in the distribution of either a major essential component (kernel, window system, essential component (kernel, window system, and so on) of the specific operating system (if and so on) of the specific operating system (if any) on which the object code runs, or a any) on which the object code runs, or a compiler used to produce the object code, or an compiler used to produce the object code, or an object code interpreter used to run itobject code interpreter used to run it

Page 13: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Term Definition (cont.)Term Definition (cont.)

““System libraries”System libraries”– (b) the subunit (aside from possible incidental (b) the subunit (aside from possible incidental

extensions) serves only to enable use of the extensions) serves only to enable use of the work with that system component or compiler or work with that system component or compiler or interpreter, or to implement a widely used or interpreter, or to implement a widely used or standard interface for which an implementation standard interface for which an implementation is available to the public in source code form.is available to the public in source code form.

Page 14: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Term Definition (cont.)Term Definition (cont.)

““Corresponding source” (in Draft 1 and Corresponding source” (in Draft 1 and complete corresponding source code)complete corresponding source code)– All the source needed to generate, install, and All the source needed to generate, install, and

(for an executable work) run the object code (for an executable work) run the object code and to modify the work, except its System and to modify the work, except its System Libraries, and except general-purpose tools or Libraries, and except general-purpose tools or generally available free program which are used generally available free program which are used unmodified in performing those activities but unmodified in performing those activities but which are not part of the workwhich are not part of the work

Page 15: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Term Definition (cont.)Term Definition (cont.)

““Corresponding source”Corresponding source”– Includes scripts used to control those activities, iIncludes scripts used to control those activities, i

nterface definition files associated with the progrnterface definition files associated with the program source files, and the source code for shared am source files, and the source code for shared libraries and dynamically linked subprograms thlibraries and dynamically linked subprograms that the work is specifically design to require, sucat the work is specifically design to require, such as by complex data communication or control h as by complex data communication or control flow between those subprograms and other partflow between those subprograms and other parts of the works of the work

Page 16: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Clearing Things UpClearing Things Up

Inclusion of a covered work in an aggregate Inclusion of a covered work in an aggregate does not cause this License to apply to the odoes not cause this License to apply to the other parts of the aggregatether parts of the aggregate

Page 17: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

DRMDRM

““Corresponding source”Corresponding source”– Including any encryption or authorization keys nIncluding any encryption or authorization keys n

ecessaryto install and/or execute modified versiecessaryto install and/or execute modified versions from source code.ons from source code.

Page 18: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

From distribution to propagationFrom distribution to propagation

““doing anything with it that requires permissidoing anything with it that requires permission under applicable copyright law, other thaon under applicable copyright law, other than executing it on a computer or making privan executing it on a computer or making private modifications. This includes copying, distrite modifications. This includes copying, distribution (with or without modification), sublicebution (with or without modification), sublicensing, and in some countries other activities nsing, and in some countries other activities as well.”as well.”

Page 19: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Patent ProtectPatent Protect

You receive the Program with a covenant from You receive the Program with a covenant from each author and conveyor of the Program, and of each author and conveyor of the Program, and of any material, conveyed under this License, on any material, conveyed under this License, on which the Program is based, that the covenanting which the Program is based, that the covenanting party will not assert (or cause others to assert) any party will not assert (or cause others to assert) any of the party’s essential patent claims in the of the party’s essential patent claims in the material that the party conveyed, against you, material that the party conveyed, against you, arising from your exercise of rights under this arising from your exercise of rights under this License. License.

Page 20: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Patent Protect (cont.)Patent Protect (cont.)

If you convey a covered work, you similarly If you convey a covered work, you similarly covenant to all recipients, including covenant to all recipients, including recipients of works based on the covered recipients of works based on the covered work, not to assert any of your essential work, not to assert any of your essential patent claims in the covered work.patent claims in the covered work.

Page 21: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Patent Protect (cont.)Patent Protect (cont.)

If you convey a covered work, knowing relying on If you convey a covered work, knowing relying on a non-sublicensable patent license that is not genea non-sublicensable patent license that is not generally available to all, your must either rally available to all, your must either – (1) act to shield downstream users against the possible (1) act to shield downstream users against the possible

patent infringement claims from which your license protepatent infringement claims from which your license protects you, orcts you, or

– (2) ensure that anyone can copy the Corresponding Sou(2) ensure that anyone can copy the Corresponding Source of the covered work, free of charge and under the terce of the covered work, free of charge and under the terms of this License, through a publicly-available network rms of this License, through a publicly-available network server or other readily accessible meansserver or other readily accessible means

Page 22: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Patent retaliationPatent retaliation

This permission terminates, as to all such This permission terminates, as to all such versions, if you bring suit against anyone for versions, if you bring suit against anyone for patent infringement of any of your essential patent infringement of any of your essential patent claims in any such version, for patent claims in any such version, for making, using, selling, or otherwise making, using, selling, or otherwise conveying work based on the Program in conveying work based on the Program in compliance with this License.compliance with this License.

Page 23: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

New provisions and license compatiNew provisions and license compatibilitybility

If a modified version of the material they If a modified version of the material they cover is a work intended to interact with cover is a work intended to interact with users through a computer network, that users through a computer network, that those users be able to obtain copies of the those users be able to obtain copies of the Corresponding Source of the work through Corresponding Source of the work through the same network sessionthe same network session

Page 24: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Geographical LimitationsGeographical Limitations

– If the conveying and/or use of the Program is If the conveying and/or use of the Program is restricted in certain countries either by patents restricted in certain countries either by patents or by copyrighted interfaces, the original or by copyrighted interfaces, the original copyright holder who places the Program under copyright holder who places the Program under this License may add an explicit geographical this License may add an explicit geographical limitation on conveying, excluding those limitation on conveying, excluding those countries, so that conveying is permitted only in countries, so that conveying is permitted only in or among countries not thus excluded. In such or among countries not thus excluded. In such case, this License incorporates the limitation as case, this License incorporates the limitation as if written in the body of this License.if written in the body of this License.

Page 25: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

The Free Software Foundation may publish revised and/or The Free Software Foundation may publish revised and/or new versions of the General Public License from time to tinew versions of the General Public License from time to time. Such new versions will be similar in spirit to the presenme. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems t version, but may differ in detail to address new problems or concerns.or concerns.

Each version is given a distinguishing version number. If thEach version is given a distinguishing version number. If the Program specifies a version number of this License whice Program specifies a version number of this License which applies to it and “any later version”, you have the option oh applies to it and “any later version”, you have the option of following the terms and conditions either of that version or f following the terms and conditions either of that version or of any later version published by the Free Software Foundaof any later version published by the Free Software Foundation. If the Program does not specify a version number of thtion. If the Program does not specify a version number of this License, you may choose any version ever published by is License, you may choose any version ever published by the Free Software Foundation.the Free Software Foundation.

Page 26: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

贊成意見贊成意見

Page 27: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

去除模糊地帶去除模糊地帶 專利保護,免於專利訴訟。專利保護,免於專利訴訟。

Page 28: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

反對意見反對意見

Page 29: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

Linux Linux 陣營的看法陣營的看法 Linus Torvalds Linus Torvalds 反對—反對— DRMDRM 。。 29 29 位核心開發員中有 位核心開發員中有 28 28 位反對,一位中位反對,一位中

立。立。 發表「發表「 GPLv3GPLv3 的危險與問題」 聲明。的危險與問題」 聲明。 Linus Torvalds Linus Torvalds 承諾不會把 承諾不會把 Linux Linux 轉換到 轉換到 GG

PLv3 PLv3 。。 OSDLOSDL 則希望有白紙黑字釐清則希望有白紙黑字釐清 GPLv2GPLv2 軟體與軟體與

GPLv3GPLv3 軟體將如何並存。 軟體將如何並存。

Page 30: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

GPLv3GPLv3 的危險與問題的危險與問題 DRMDRM :「我們篤信:「我們篤信 LinuxLinux 程式設計的自由精程式設計的自由精

神,因此絕不接受內含對終端使用設限的任神,因此絕不接受內含對終端使用設限的任何授權。」何授權。」

專利:「我們認為此條款令人無法接受,因專利:「我們認為此條款令人無法接受,因為可能澆息企業協助我們創新的意願,而企為可能澆息企業協助我們創新的意願,而企業的貢獻卻是不可或缺的。」 業的貢獻卻是不可或缺的。」

Page 31: GPLv3. 事件 Mar 6, 2003, SCO 控告 IBM 未經授權將 SCO 的 Unix 程式碼用於 Linux Jan 16, 2006, GNU GENERAL PUBLIC LICENSE Version 3 Discussion Draft (Draft1) GNU GENERAL.

GPLv3GPLv3 的危險與問題的危險與問題 日後程式設計師可能在日後程式設計師可能在 GPLGPL 添加的額外限制添加的額外限制

條款:「條款:「 GPLv3GPLv3 草案附帶額外限制欄,將成草案附帶額外限制欄,將成為我們為我們 (Linux)(Linux) 經銷商設法釐清法律問題時的經銷商設法釐清法律問題時的夢魘,也因此與夢魘,也因此與 GPLv2GPLv2 不額外設限的條款相不額外設限的條款相比,顯然是一大退步,令人無法接受。」 比,顯然是一大退步,令人無法接受。」