http://is.gd/v7Fatm (odp) 姓名:legist‧強(林珈宏/Richard) 時間

Download Report

Transcript http://is.gd/v7Fatm (odp) 姓名:legist‧強(林珈宏/Richard) 時間

http://is.gd/NYx8tl (pdf)
http://is.gd/v7Fatm (odp)
1
PHPConf.tw 2011
網站開發須注意的程式碼授權問題
■
姓名: legist‧ 強 ( 林珈宏 /Richard)
■
時間: 2011-11-12 ( 六 ) 11:20-11:50
■
信箱: [email protected]
■
電話: 02-2788-3799 ext.1477
■
噗浪: legist
本簡報採用 創用 CC 「姓名標示」 3.0 台灣條款
本簡報圖檔下載於網際網路者,特別聲明為自由軟體推廣演講中進行「合理使用」,請讀者不要任意移置他用。
PHPConf.tw 2011
網站開發須注意的程式碼授權問題
■
Preamble
■
Free/ Open Source Software License
■
Web Developing & Licensing
■
Conclusion
我只有
30 分鐘
4
我卻很
搞維
5
這題目可講
尛時
6
那就衝吧 !!!
7
Preamble
■
Web-developer
■
程式碼智財權
■
有時 (?) 可賺大錢
■
卻更多時候是抄很大
Preamble
■
Web-developer
■
程式碼智財權
■
有時 (?) 可賺大錢
■
卻更多時候是抄很大
■
如果你被抄
■
如果你要抄
Preamble
■
Web-developer
■
自由軟體
■
程式碼智財權
■
誰的自由
■
有時 (?) 可賺大錢
■
自由之道
■
卻更多時候是抄很大
■
如何用之有道
■
甚至「用一碼以利天下」
■
如果你被抄
■
如果你要抄
Preamble
■
Web-developer
■
#$%^&@!#$%%^&@!#$%(#$%
程式碼智財權
至於版權 ...
有時 (?) 可賺大錢
這個作者沒有授權 ...
■
■
卻更多時候是抄很大
■
如果你被抄
■
如果你要抄
■
自由軟體
■
誰的自由
■
自由之道
■
如何用之有道
■
甚至「用一碼以利天下」
Preamble
■
Web-developer
■
#$%^&@!#$%%^&@!#$%(#$%
程式碼智財權
至於版權 ...
有時 (?) 可賺大錢
這個作者沒有授權 ...
■
■
卻更多時候是抄很大
■
如果你被抄
■
如果你要抄
■
自由軟體
■
誰的自由
我寫信去問了
■
自由之道
是可以用的 ... Orz
■
如何用之有道
■
甚至「用一碼以利天下」
Preamble
■
Web-developer
■
■
#$%^&@!#$%%^&@!#$%(#$%
程式碼智財權
至於版權 ...
有時 (?) 可賺大錢
這個作者沒有授權 ...
■
■
卻更多時候是抄很大
■
如果你被抄
■
如果你要抄
自由軟體
■
誰的自由
我寫信去問了
■
自由之道
是可以用的 ... Orz
■
如何用之有道
大家不覺得
甚至「用一碼以利天下」
很麻煩嗎 X D
■
Preamble
■
今天的目的
■
淺出:給 web-developer 對於授權的大體認知
■
深入:已經熟悉此議題內容的朋友
希望可從中再激盪出一些想法
■
學習:多了解開發實務上的授權問題
■
朋友:多認識在座各位強者!
PHPConf.tw 2011
網站開發須注意的程式碼授權問題
■
Preamble
■
Free/ Open Source Software License
■
Web Developing & Licensing
■
Conclusion
The Printer
■
■
Richard M. Stallman (RMS)
Xerox Printer
合理使用
©http://www.digibarn.com/history/first-chmvisit/Image49.jpg
合理使用 ©http://archive.computerhistory.org/resources/physical-object/xerox/X750-86.lg.jpg
©Gisle Hannemyr, CC by-sa 3.0 unported,
http://en.wikipedia.org/wiki/File:Rms_ifi_large.jpg
Spectrum of Freedom & Ristriction
1980
私有軟體
Proprietary Software
License
公共領域
Public
Domain
Spectrum of Freedom & Ristriction
All rights reserved?
All wrongs reserved!!!
I want FREDOM!!!
( 設計對白 )
私有軟體
Proprietary Software
License
1980
公共領域
Public
Domain
©Gisle Hannemyr, CC by-sa 3.0 unported,
http://en.wikipedia.org/wiki/File:Rms_ifi_large.jpg
The Free Software Definition
■
■
■
■
The freedom to run the program, for any purpose
(freedom 0).
The freedom to study how the program works, and
change it to make it do what you wish (freedom
1).
The freedom to redistribute copies so you can
help your neighbor (freedom 2).
The freedom to distribute copies of your
modified versions to others (freedom 3). By
doing this you can give the whole community a
chance to benefit from your changes.
The Free Software Definition
■
■
■
■
The freedom to run the program, for any purpose
(freedom 0).
The freedom to study how the program works, and
change it to make it do what you wish (freedom
執行程式的自由
1).
The freedom to redistribute copies so you can
help your neighbor (freedom 2).
The freedom to distribute copies of your
modified versions to others (freedom 3). By
doing this you can give the whole community a
chance to benefit from your changes.
The Free Software Definition
■
■
■
■
The freedom to run the program, for any purpose
(freedom 0).
The freedom to study how the program works, and
change it to make it do what you wish (freedom
1).
The freedom to redistribute copies so you can
help your neighbor (freedom 2).
研究修改的自由
The freedom to distribute copies of your
modified versions to others (freedom 3). By
doing this you can give the whole community a
chance to benefit from your changes.
The Free Software Definition
■
■
■
■
The freedom to run the program, for any purpose
(freedom 0).
The freedom to study how the program再散佈幫助
works, and
change it to make it do what you wish (freedom
旁人的自由
1).
The freedom to redistribute copies so you can
help your neighbor (freedom 2).
The freedom to distribute copies of your
modified versions to others (freedom 3). By
doing this you can give the whole community a
chance to benefit from your changes.
The Free Software Definition
■
■
■
■
The freedom to run the program, for any purpose
(freedom 0).
The freedom to study how the program works, and
change it to make it do what you wish (freedom
1).
散佈修改後
The freedom to redistribute copies so
you can
help your neighbor (freedom 2).
程式的自由
The freedom to distribute copies of your
modified versions to others (freedom 3). By
doing this you can give the whole community a
chance to benefit from your changes.
The Free Software Definition
■
■
■
■
The freedom to run the program, for any purpose
(freedom 0).
The freedom to study how the program works, and
change it to
make it do what you
wish (freedom
使用
修改
1).
The freedom to redistribute copies so you can
help your neighbor (freedom 2).
究distribute copies
散佈
The freedom研
to
of your
modified versions to others (freedom 3). By
doing this you can give the whole community a
chance to benefit from your changes.
The Free Software Definition
■
■
■
■
The freedom to run the program, for any purpose
(freedom 0).
The freedom to study how the program works, and
change it to
make it do what you
wish (freedom
使用
修改
1).
How about
Public Domain?
The freedom to redistribute
copies so you can
help your neighbor 公共領域
(freedom 2).
究distribute copies
散佈
The freedom研
to
of your
modified versions to others (freedom 3). By
doing this you can give the whole community a
chance to benefit from your changes.
How to protect the freedom?
■
■
Public Domain allows people to
share the program and their
improvements, if they are so
minded. But it also allows
uncooperative people to convert
the program into proprietary
software.
People who receive the program
in that modified form do not
have the freedom that the
original author gave them; the
middleman has stripped it away.
How to protect the freedom?
■
■
Public Domain allows people to
share the program and their
Public Domain
improvements, if they are so
可輕易轉換為
minded. But it also allows
uncooperative people to convert Proprietary
the program into proprietary
software.
People who receive the program Public Domain
in that modified form do not
無法確保
have the freedom that the
四大自由
original author gave them; the
middleman has stripped it away.
How to protect the freedom?
■
■
Public Domain allows people to
share the program and their
Public Domain
improvements, if they are so
可輕易轉換為
minded.但是,公共領域
But it also allows
uncooperative people to convert Proprietary
Public
the program
intoDomain
proprietary
仍屬程式碼著作
software.
People 權利狀態的選項
who receive the program Public Domain
in that modified form do not
無法確保
have the freedom that the
四大自由
original author gave them; the
middleman has stripped it away.
Public Domain
Public Domain
Public Domain
我也版權沒有
( 法律術語 : No rights reserved.)
大家儘管用 ! ! !
How to protect the freedom?
■
■
Public Domain allows people to
share the program and their
Public Domain
improvements, if they are so
可輕易轉換為
minded.但是,公共領域
But it also allows
uncooperative people to convert Proprietary
Public
the program
intoDomain
proprietary
仍然無法達到
software.
People who
receive
RMS
的期待the program Public Domain
in that modified form do not
無法確保
have the freedom that the
四大自由
original author gave them; the
middleman has stripped it away.
How to protect the freedom?
■
■
Public Domain allows people to
share the program and their
Public Domain
improvements, if they are so
可輕易轉換為
RMS
開啟
minded. But it also allows
uncooperative people to convert Proprietary
自由軟體運動
the program
into proprietary
software.
以授權契約來保障
People who receive the program Public Domain
四大自由
in that modified
form do not
無法確保
have the freedom that the
四大自由
original author gave them; the
middleman has stripped it away.
Copyleft
Copyleft
■
特性
■
為實現四大自由
■
以著作權為基礎
■
預先授權給公眾
■
修改著作之人也
必須採用相同方式
再授權修改出來的
衍生著作
[ 互惠共榮 ]
吾佛心對汝
汝亦佛心對人
乃自由大同也
授權拘束性
License
■
源自於財產法 (property law)
■
你可以使用我的財產,只要你...
■
條件 (conditions)
■
前提:權利人才可授權
–
基於著作權法給予著作權人的所有權利
License
■
優點
■
不必加以詢問,符合條件即可
■
符合共同開發模式
■
違反 license ,不但違約,亦為侵權
■
他人一旦侵權,著作權法的手段為:
–
損害賠償(要賠錢)
–
假處分(商品下架)
–
刑事責任(有前科)
License
■
缺點
■
License 是個定型化契約
■
手動升級 ex: GPL2→GPL3 ,要原作者(群)同意
■
各個 open source license 間不相容的問題
GPL – strong copyleft
General
Public
License
GPL
Proprietary Software
License
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
GPL
Proprietary Software
License
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
衍生程式
須依 GPL
繼續授權
GPL
Proprietary Software
License
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
GPL
Proprietary Software
License
衍生程式
須依 GPL
繼續授權
Copyleft
我佛心對你
你也要佛心對人
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
GPL
Proprietary Software
License
衍生程式
須依 GPL
繼續授權
Exp.
Seperate &
Independent
Copyleft
我佛心對你
你也要佛心對人
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
GPL
Proprietary Software
License
衍生程式
須依 GPL
繼續授權
Exp.
Seperate &
Independent
不區分
Dynamic link
Static link
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
衍生程式
須依 GPL
繼續授權
Exp.
Seperate &
Independent
不區分
GPL 少量取用上限
Dynamic link
10 Static
行程式碼link
Proprietary Software
License
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
衍生程式
須依 GPL
繼續授權
Exp.
Seperate &
Independent
不願整個程式
不區分 都變成 GPL
GPL 少量取用上限
Dynamic link
那就不要用
Static
link
10 行程式碼
Proprietary Software
License
Public
Domain
GPL 授權拘束性的開啟
■
判斷標準:目的碼的散布行為
■
發生義務:提供源碼
■
沒有散布行為,就無義務提供源碼
■
一旦散布目的碼,就必須提供源碼
GPL 授權拘束性的開啟
pct
GPLed
A 程式
①
object code
source code
legist‧
強
改作為
B 程式
GPL 授權拘束性的開啟
pct
GPLed
A 程式
①
legist‧
強
改作為
B 程式
object code
source放在家裡
code
沒有分享出來
別人也要不到
GPL 授權拘束性的開啟
pct
GPLed
A 程式
①
object code
source code
legist‧
強
改作為
B 程式
②
Eddie
只給了
目的碼
GPL 授權拘束性的開啟
legist‧
強
pct
GPLed
A 程式
①
改作為
B 程式
object code
source code
③
只給了
目的碼
②
想拿來
改看看
給我
源碼
Eddie
GPL 授權拘束性的開啟
legist‧
強
pct
①
GPLed
A 程式
改作為
B 程式
object code
source code
有義務
④
提供
源碼
③
只給了
目的碼
②
想拿來
改看看
給我
源碼
Eddie
GPL 授權拘束性的開啟
legist‧
強
pct
GPLed
A 程式
開啟
改作為
B 程式
授權拘束性
有義務
④
提供
源碼
③
只給了
目的碼
②
想拿來
改看看
給我
源碼
Eddie
GPL – strong copyleft
General
Public
License
連結
修改
取用
GPL
GPL library?
Proprietary Software
License
Public
Domain
GPL – strong copyleft
General
Public
License
連結
修改
取用
很多人不敢用
GPL
GPL library?
Proprietary Software
License
Public
Domain
LGPL – weak copyleft
Library
Lessor
LGPL
Copyleft
is lessor
GPL
Proprietary Software
License
Public
Domain
LGPL – weak copyleft
Library
Lessor
LGPL
Copyleft
is lessor
連結利用
修改
GPL
Proprietary Software
License
Public
Domain
LGPL – weak copyleft
Library
Lessor
Copyleft
is lessor
LGPL
GPL
動態連結時
主程式不會受
L G P L 拘束
Proprietary Software
License
連結利用 自
由
Public
Domain
LGPL – weak copyleft
Library
Lessor
LGPL
GPL
Proprietary Software
License
Copyleft
is lessor
修改
拘
束
修改 l i b r a r y 後
新 l i b 必須
用 L G P L 散布 Public
Domain
LGPL – weak copyleft
Library
Lessor
LGPL
Copyleft
is lessor
連結利用 自
修改
由
拘
束
GPL
Proprietary Software
License
Public
Domain
LGPL – weak copyleft
LGPL
GPL
Proprietary Software
License
Public
Domain
the "ASP loophole" in GPL
LGPL
GPL
Application
Service
Proprietary Software
Provider
License
Public
Domain
the "ASP loophole" in GPL
LGPL
GPL
Software Application
as a
Service
Proprietary
Software
Service
Provider
License
Public
Domain
the "ASP loophole" in GPL
LGPL
Cloud
Computing
GPL
Software Application
as a
Service
Proprietary
Software
Service
Provider
License
Public
Domain
the "ASP loophole" in GPL
LGPL
Cloud
Computing
GPL
Software Application
as a
Service
Proprietary
Software
Service
Provider
License
Public
Domain
the "ASP loophole" in GPL
拿不到 c o d e 呀
怒了啊怒了 ! ! !
LGPL
( 設計對白 )
Cloud
Computing
GPL
Software Application
as a
Service
Proprietary
Software
Service
Provider
License
Public
Domain
©Gisle Hannemyr, CC by-sa 3.0 unported,
http://en.wikipedia.org/wiki/File:Rms_ifi_large.jpg
AGPL
Affero
GPL
(AGPL)
AGPL
LGPL
GPL
Proprietary Software
License
Public
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
AGPL
LGPL
Net-based
Copyleft
GPL
Proprietary Software
License
Public
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
AGPL
LGPL
Net-based
Copyleft
GPL
Application Software
Service
as a
Proprietary Software
Provider
Service
License
Cloud
Public
Computing
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
AGPL
LGPL
GPL
Net-based
Copyleft
不以「散布」來判斷
是否 啟動開源碼義務
Application Software
Service
as a
Proprietary Software
Provider
Service
License
Cloud
Public
Computing
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
LGPL
Net-based
Copyleft
不以「散布」來判斷
只要以 ASP 方式
是否 啟動開源碼義務
提供服務者
GPL
即可能須對用戶
AGPL
Application Software提供源碼
Cloud
Service
as a
Proprietary Software
Public
Computing
Provider
Service
License
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
AGPL
LGPL
Net-based
Copyleft
單純利用
修改
GPL
Application Software
Service
as a
Proprietary Software
Provider
Service
License
Cloud
Public
Computing
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
AGPL
LGPL
GPL
Net-based
Copyleft
單純利用 自
由
單純利用時
主程式不會受
A G P L 拘束
Application Software
Service
as a
Proprietary Software
Provider
Service
License
Cloud
Public
Computing
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
AGPL
LGPL
GPL
Net-based
Copyleft
修改
拘
束
修改 A G P L 程式
須受 A G P L 拘束
Application Software
Service
as a
Proprietary Software
Provider
Service
License
Cloud
Public
Computing
Domain
AGPL – net-based copyleft
Affero
GPL
(AGPL)
AGPL
LGPL
Net-based
Copyleft
單純利用 自
修改
由
拘
束
GPL
Application Software
Service
as a
Proprietary Software
Provider
Service
License
Cloud
Public
Computing
Domain
Spectrum of Freedom & Ristriction
LGPL
AGPL
GPL
Proprietary Software
License
Public
Domain
Spectrum of Freedom & Ristriction
大家都必須
要一直自由
LGPL
GPL 類
AGPL
GPL
Proprietary Software
License
Public
Domain
Spectrum of Freedom & Ristriction
大家都必須
要一直自由
LGPL
GPL 類
AGPL
我的程式碼
若以 GPL 授權
該如何營利 ?
GPL
Proprietary Software
License
Public
Domain
MySQL
MySQL
MySQL
MySQL
Dual-licensing
Dual-licensing
著作權人以 GPL 釋出程式碼
社群開發者會使用、除錯、修改
原著作權人在新版本發佈時
又可納入新頁獻的程式碼
Dual-licensing
商業公司若不願依 GPL 開源
則可向原著作權人進行商業授權
原著作權人即可獲得金錢收益
Dual-licensing
GPL 類授權
■
使用者有大範圍的利用權利+多量義務
用我的 code ,就要照我的遊戲規則來走!
LGPL
1. 適用於函式庫或具函式庫特性的軟體
2. 中高度拘束性:單純利用不會受到拘束
AGPL
GPL
1. 所有軟體皆可採用
2. 高度拘束性
1. 所有軟體皆可採用(特別針對「網路應用軟體」設計)
2. 更高度拘束性: ASP ( Application Service Provider )
GPL 類授權
■
使用者有大範圍的利用權利+多量義務
用我的 code ,就要照我的遊戲規則來走!
LGPL2
LGPL3
LGPL
1. 適用於函式庫或具函式庫特性的軟體
2. 中高度拘束性:單純利用不會受到拘束
AGPL3
AGPL
GPL
1. 所有軟體皆可採用
2. 高度拘束性
GPL2
GPL3
1. 所有軟體皆可採用(特別針對「網路應用軟體」設計)
2. 更高度拘束性: ASP ( Application Service Provider )
Open Source Licenses
■
■
O
Open Source Licenses
■
■
O
開放源碼促進會
Open Source Licenses
■
■
O
開放源碼促進會
開放源碼條款
認證機構
Open Source Licenses
■
■
O
開放源碼促進會
開放源碼條款
認證機構
目前已有 67 種
開放源碼條款
Academic Free License 3.0 (AFL-3.0), Adaptive Public License (APL-1.0), Apache License 2.0 (Apache-2.0), Apple
Public Source License (APSL-2.0), Artistic license 2.0 (Artistic-2.0), Attribution Assurance Licenses (AAL), BSD 3Clause "New" or "Revised" License (BSD-3-Clause), BSD 2-Clause "Simplified" or "FreeBSD" License (BSD-2Clause), Boost Software License (BSL-1.0), Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1),
Common Development and Distribution License 1.0 (CDDL-1.0), Common Public Attribution License 1.0 (CPAL-1.0),
CUA Office Public License Version 1.0 (CUA-OPL-1.0), EU DataGrid Software License (EUDatagrid), Eclipse Public
License 1.0 (EPL-1.0), Educational Community License, Version 2.0 (ECL-2.0), Eiffel Forum License V2.0 (EFL-2.0),
Entessa Public License (Entessa), European Union Public License, Version 1.1 (EUPL-1.1), Fair License, Frameworx
License (Frameworx-1.0), GNU Affero General Public License v3 (AGPL-3.0), GNU General Public License version
2.0 (GPL-2.0), GNU General Public License version 3.0 (GPL-3.0), GNU Library or "Lesser" General Public License
version 2.1 (LGPL-2.1), GNU Library or "Lesser" General Public License version 3.0 (LGPL-3.0), Historical Permission
Notice and Disclaimer (HPND), IBM Public License 1.0 (IPL-1.0), IPA Font License (IPA), ISC License (ISC), LaTeX
Project Public License 1.3c (LPPL-1.3c), Lucent Public License Version 1.02, MirOS Licence, Microsoft Public License
(Ms-PL), Microsoft Reciprocal License (Ms-RL), MIT license (MIT), Motosoto License (Motosoto), Mozilla Public
License 1.1 (MPL-1.1), Multics License, NASA Open Source Agreement 1.3 (NASA 1.3), NTP License (NTP), Naumen
Public License (Naumen), Nethack General Public License (NGPL), Nokia Open Source License, Non-Profit Open
目前已有 67 種
開放源碼條款
3.0), The PostgreSQL License (PostgreSQL), Python License (Python-2.0),
CNRI Python license, Qt Public License
Software License 3.0 (Non-Profit OSL 3.0), OCLC Research Public License 2.0 (OCLC-2.0), Open Font License 1.1
(OFL 1.1), Open Group Test Suite License (OGTSL), Open Software License 3.0 (OSL-3.0), PHP License 3.0 (PHP(QPL-1.0), RealNetworks Public Source License V1.0 (RPSL-1.0), Reciprocal Public License 1.5 (RPL-1.5), Ricoh
Source Code Public License (RSCPL), Simple Public License 2.0 (Simple-2.0), Sleepycat License (Sleepycat), Sun
Public License (SPL), Sybase Open Watcom Public License 1.0 (Watcom-1.0), University of Illinois/NCSA Open
Source License (NCSA), Vovida Software License v. 1.0 (VSL-1.0), W3C License, wxWindows Library License
(WXwindows), X.Net License (Xnet), Zope Public License 2.0 (ZPL-2.0), zlib/libpng license (Zlib).
Academic Free License 3.0 (AFL-3.0), Adaptive Public License (APL-1.0), Apache License 2.0 (Apache-2.0), Apple
Public Source License (APSL-2.0), Artistic license 2.0 (Artistic-2.0), Attribution Assurance Licenses (AAL), BSD 3Clause "New" or "Revised" License (BSD-3-Clause), BSD 2-Clause "Simplified" or "FreeBSD" License (BSD-2Clause), Boost Software License (BSL-1.0), Computer Associates Trusted Open Source License 1.1 (CATOSL-1.1),
Common Development and Distribution License 1.0 (CDDL-1.0), Common Public Attribution License 1.0 (CPAL-1.0),
CUA Office Public License Version 1.0 (CUA-OPL-1.0), EU DataGrid Software License (EUDatagrid), Eclipse Public
License 1.0 (EPL-1.0), Educational Community License, Version 2.0 (ECL-2.0), Eiffel Forum License V2.0 (EFL-2.0),
Entessa Public License (Entessa), European Union Public License, Version 1.1 (EUPL-1.1), Fair License, Frameworx
License (Frameworx-1.0), GNU Affero General Public License v3 (AGPL-3.0), GNU General Public License version
2.0 (GPL-2.0), GNU General Public License version 3.0 (GPL-3.0), GNU Library or "Lesser" General Public License
version 2.1 (LGPL-2.1), GNU Library or "Lesser" General Public License version 3.0 (LGPL-3.0), Historical Permission
Notice and Disclaimer (HPND), IBM Public License 1.0 (IPL-1.0), IPA Font License (IPA), ISC License (ISC), LaTeX
Project Public License 1.3c (LPPL-1.3c), Lucent Public License Version 1.02, MirOS Licence, Microsoft Public License
(Ms-PL), Microsoft Reciprocal License (Ms-RL), MIT license (MIT), Motosoto License (Motosoto), Mozilla Public
License 1.1 (MPL-1.1), Multics License, NASA Open Source Agreement 1.3 (NASA 1.3), NTP License (NTP), Naumen
Public License (Naumen), Nethack General Public License (NGPL), Nokia Open Source License, Non-Profit Open
目前已有 67 種
開放源碼條款
3.0), The PostgreSQL License (PostgreSQL), Python License (Python-2.0),
CNRI Python license, Qt Public License
Software License 3.0 (Non-Profit OSL 3.0), OCLC Research Public License 2.0 (OCLC-2.0), Open Font License 1.1
(OFL 1.1), Open Group Test Suite License (OGTSL), Open Software License 3.0 (OSL-3.0), PHP License 3.0 (PHP(QPL-1.0), RealNetworks Public Source License V1.0 (RPSL-1.0), Reciprocal Public License 1.5 (RPL-1.5), Ricoh
Source Code Public License (RSCPL), Simple Public License 2.0 (Simple-2.0), Sleepycat License (Sleepycat), Sun
Public License (SPL), Sybase Open Watcom Public License 1.0 (Watcom-1.0), University of Illinois/NCSA Open
Source License (NCSA), Vovida Software License v. 1.0 (VSL-1.0), W3C License, wxWindows Library License
(WXwindows), X.Net License (Xnet), Zope Public License 2.0 (ZPL-2.0), zlib/libpng license (Zlib).
授權條款三大分類
常見授權條款表
分類
BSD 類
GPL 類
其它類
授權條款
全名
Apache-1.1
Apache Software License 1.1
Apache-2.0
Apache License 2.0
BSD-3-Clause
New BSD License
MIT
MIT License
Zlib
Zlib/libpng License
GPL-2.0/3.0
GNU General Public License 2.0/3.0
LGPL-2.1/3.0
GNU Lesser General Public License 2.1/3.0
AGPL-3.0
GNU Affero Public License 3.0
CPL/EPL-1.0
Common Public License 1.0
Eclipse Public License 1.0
MPL-1.1
Mozilla Public License 1.1
CDDL-1.0
Common Development and Distribution License 1.0
Artistic 2.0
Artistic License 2.0
Spectrum of Freedom & Ristriction
MPL/CDD
LGPL L
AGPL
GPL
Proprietary Software
License
EPL/CPL
MIT/BSD
Apache2.0
Public
Domain
Spectrum of Freedom & Ristriction
大家都必須
要一直自由
MPL/CDD
LGPL L
MIT/BSD
GPL 類
AGPL
GPL
Proprietary Software
License
EPL/CPL
Apache2.0
Public
Domain
Spectrum of Freedom & Ristriction
MPL/CDD
LGPL L
幾乎無拘無束
的自由
MIT/BSD
BSD 類
AGPL
GPL
Proprietary Software
License
EPL/CPL
Apache2.0
Public
Domain
Spectrum of Freedom & Ristriction
MPL/CDD
LGPL L
MIT/BSD
其他類
AGPL
GPL
Proprietary Software
License
EPL/CPL
Apache2.0
有點自由
又不會太自由
Public
Domain
Spectrum of Freedom & Ristriction
大家都必須
要一直自由
幾乎無拘無束
的自由
MPL/CDD
LGPL L
GPL 類
AGPL
GPL
Proprietary Software
License
MIT/BSD
其他類
EPL/CPL
BSD 類
Apache2.0
有點自由
又不會太自由
Public
Domain
無拘無束的自由: BSD 類
■
加州大學柏克萊分校
■
麻省理工學院
Non-copyleft
Licenses
MIT/BS
D
© Fair use, avaiable at:
http://electroceramics.mit.edu/MIT2.JPG
© Fair use, avaiable at:
http://calstudyabroad.com/yahoo_site_admin/assets/i
mages/20061226_University_of_California_Berkeley.
29592951_std.jpg
無拘無束的自由: BSD 類
■
Non-copyleft
Licenses
使用者有大範圍的利用權利+少量義務
C+D
1. 著作權聲明 (Copyright Notice)
2. 免責聲明 (Disclaimer)
MIT/BS
D
BSD license 範例
BSD license 範例
著作權聲明
Copyright
Notice
BSD license 範例
著作權聲明
Copyright
Notice
BSD license 範例
授權範圍
BSD license 範例
授權範圍
BSD license 範例
免責聲明
Disclaimer
BSD license 範例
免責聲明
Disclaimer
BSD license 範例
著作權聲明
Copyright
Notice
授權範圍
免責聲明
Disclaimer
PostgreSQL is released under
the PostgreSQL License, a liberal
Open Source license, similar to
the BSD or MIT licenses.
無拘無束的自由: BSD 類
■
Non-copyleft
Licenses
使用者有大範圍的利用權利+少量義務
C+D
1. 著作權聲明 (Copyright Notice)
2. 免責聲明 (Disclaimer)
MIT/BS
D
無拘無束的自由: BSD 類
■
Non-copyleft
Licenses
使用者有大範圍的利用權利+少量義務
C+D
1. 著作權聲明 (Copyright Notice)
2. 免責聲明 (Disclaimer)
1. 明示提醒商標權未授權
2. 明示提醒可收費提供擔保
MIT/BS
D
Apache2.0
3. 專利授權規定
4. 專利權行使抑制條款
5. 相容於 GPL v3 (不相容於 GPL v2 )
PuTTY
其他類:互不干擾的自由
■
■
Weak-copyleft
Licenses
使用者有大範圍的利用權利+中量義務
義務性規定多,但只拘束部份程式碼部分拘束性
Copyleft 只限原授權範圍,不及自己獨立寫的碼
1. 利用 MPL/CDDL 程式碼所產生
MPL/CDD
L
的結果檔須採 MPL/CDDL 授權
2. 自己寫的源碼檔案,可隨意授權
EPL/CPL
1. 自已寫的獨立模組( Module )可隨意授權
Weak-copyleft
Licenses
其他類:互不干擾的自由
X
MPL 程式
Y
Y
MPL
Y
X
X
X
Y
MPL 授權條款
Y 授權條款
X 授權條款
MPL
各授權條款之間相容
PHPConf.tw 2011
網站開發須注意的程式碼授權問題
■
Preamble
■
Free/ Open Source Software License
■
Web Developing & Licensing
■
Conclusion
Web-developing
■
Client side vs Server side
■
Client 端,直譯式的明碼執行
–
–
■
■
Open source + release code
沒授權,一樣不能用,只給看
Server 端,看不到 code
Open Source 好處
■
標明出處
■
標明授權
How to choose your license?
■
原創程式
■
你想用什麼授權就用什麼
–
考慮各個授權的性質
–
你希望未來人家怎麼用
–
與別的自由軟體專案的授權相容性
–
商業化的考量(例:雙重授權的應用)
How to choose your license?
■
拿人家的來改
■
Follow 原來的授權
–
GPL (整支程式)
–
LGPL ( library )
–
MPL 類(一定範圍)
■
自己想另外用別的授權
–
BSD 類
●
●
●
商業化
包進專屬軟體
改成 GPL 授權
PHPConf.tw 2011
網站開發須注意的程式碼授權問題
■
Preamble
■
Free/ Open Source Software License
■
Web Developing & Licensing
■
Conclusion
Conclusion
Conclusion
空的 . . . ! ?
因為我猜
我根本沒時間
講結尾
126
Conclusion
■
授權條款的選擇
■
網站程式開發
Open wins
■
精神 / 理念
■
開發
–
對公司
商業模式
–
對個人
■
■
最最最後 . . .
128
相關資源
129
OpenFoundry 法律授權常用連結
●
法律小辭典
●
自由軟體授權常見問答集
●
自由軟體訴訟案件分析彙整
●
法律政策發問討論區
●
自由軟體授權條款介紹
●
自由軟體授權導引精靈v2.3
●
自由軟體授權導引精靈v3.3
●
法律授權資源表列
法律源地
法政討論區
法律授權資源表列 - 文章與書籍
洽詢
自由軟體
鑄造場
本簡報授權聲明
■
■
■
本簡報授權採 Creative Commons- 姓名標示 - 台灣 -3.0 版」
歡迎符合 CC-BY 授權的重製、散布或修改本簡報內容,並請標明:
(1) 原作者姓名「林珈宏 [email protected]」
(2) 本簡報標題「網站開發須注意的程式碼授權問題」
(3) 本演講資訊「 2011-11-12 @ PHPConf.tw 2011 」
簡報中所取用的圖形創作部份截取自網際網路者,僅供演講者於校園推廣時主
張非營利性之合理使用,讀者請勿對其再行取用,除非您本身自忖亦符合主張
合理使用之情狀,且自負相關法律責任。
THANK YOU
Website: www.openfoundry.org
Phone: 02-2788-3799 ext. 1477
http://is.gd/NYx8tl (pdf)
http://is.gd/v7Fatm (odp)
本簡報授權聲明
■
■
■
本簡報授權採 Creative Commons- 姓名標示 - 台灣 -3.0 版」
歡迎符合 CC-BY 授權的重製、散布或修改本簡報內容,並請標明:
(1) 原作者姓名「林珈宏 [email protected]」
(2) 本簡報標題「網站開發須注意的程式碼授權問題」
(3) 本演講資訊「 2011-11-12 @ PHPConf.tw 2011 」
簡報中所取用的圖形創作部份截取自網際網路者,僅供演講者於校園推廣時主
張非營利性之合理使用,讀者請勿對其再行取用,除非您本身自忖亦符合主張
合理使用之情狀,且自負相關法律責任。
THANK YOU
Website: www.openfoundry.org
Phone: 02-2788-3799 ext. 1477