代碼都有權(quán)利和義務(wù)@開源軟件許可類別分析

      網(wǎng)友投稿 1337 2025-04-02

      1?????????引言

      你寫代碼時(shí),可能也會(huì)重用代碼,這包括代碼片段、庫、函數(shù)、框架和整個(gè)應(yīng)用程序。

      如果你想把軟件代碼添加到你的代碼庫中,需要知道所有的軟件代碼都有一定的權(quán)利和義務(wù)。

      免費(fèi)和開源軟件(FOSS)是免費(fèi)的,但你并不是可以隨意使用它們。

      正式開發(fā)的代碼通常都有特定的軟件許可證。

      軟件許可證有很多不同的類型,對(duì)不遵守許可證的懲罰可能很嚴(yán)厲。如果你在沒有遵守許可證義務(wù)的情況下重用一個(gè)組件,許可證頒發(fā)者可能會(huì)起訴你,你可能會(huì)被迫發(fā)布自己的源代碼。為了保護(hù)你的代碼和你的組織,你需要在使用任何不是你自己編寫的代碼(包括庫和框架)之前了解這些軟件許可證。

      2?????????軟件許可證有哪些不同類型?

      以下是應(yīng)該了解的五種常見的軟件許可模式。四種是開源許可證的例子(允許你在一定程度上重用代碼),還有一種不允許任何重用。

      2.1????公共領(lǐng)域許可(Public Domain)

      這是最寬泛的軟件許可證類型。當(dāng)軟件處于公共領(lǐng)域時(shí),任何人都可以不受任何限制地修改和使用。但在將其添加到自己的代碼庫之前,你應(yīng)該始終確保它是安全的。這里要注意的是,沒有明確授權(quán)的代碼不會(huì)自動(dòng)進(jìn)入公共領(lǐng)域。這包括你在互聯(lián)網(wǎng)上找到的代碼片段。

      2.2????允許性許可(Permissive)

      允許性許可證也被稱為?"Apache風(fēng)格?"或?"BSD風(fēng)格"。它們包含關(guān)于如何修改或重新分發(fā)軟件的最低要求。這種類型的軟件許可證是自由和開放源碼軟件中最流行的許可證。除了Apache License和BSD License之外,另一個(gè)常見的變體是MIT License。

      2.3????LGPL

      GNU Lesser General Public License允許你在軟件中鏈接開源軟件庫。如果你只是簡(jiǎn)單地編譯或鏈接一個(gè)LGPL授權(quán)的庫與你自己的代碼,你可以在任何你想要的許可證下發(fā)布你的應(yīng)用程序,甚至是專有許可證。但如果你修改庫或?qū)⑵洳糠謴?fù)制到你的代碼中,你就必須在類似于LGPL的條款下發(fā)布你的應(yīng)用程序。

      2.4????限制性許可證(Copyleft)

      Copyleft許可證也被稱為互惠許可證或限制性許可證。最著名的復(fù)制許可或互惠許可的例子是GPL。這些許可證允許你修改被許可的代碼,并在此基礎(chǔ)上發(fā)布新的作品,只要你在相同的軟件許可證下發(fā)布任何新作品或改編作品。例如,一個(gè)組件的許可證可能會(huì)說,該作品可以自由使用,并且只能為個(gè)人使用而發(fā)布。因此,您創(chuàng)建的任何衍生產(chǎn)品也將僅限于個(gè)人使用。衍生物是指你開發(fā)的包含該組件的任何新軟件)。

      這里的問題是,你的軟件用戶也有權(quán)利修改代碼。因此,你必須公開你自己的源代碼。但很多時(shí)候,公開你的源代碼未必對(duì)你有利。

      2.5????專有許可證

      在所有類型的軟件許可證中,這是限制性最強(qiáng)的。它背后的理念是保留所有權(quán)利。它一般用于不得修改或重新分發(fā)作品的專有軟件。

      3?列表對(duì)比

      下表比較了每種許可證的各種特征,是基于七個(gè)主題或類別的每種許可證的條款和條件的一般指南。最近的工具,如歐盟委員會(huì)的Joinup Licensing Assistant,使基于40多個(gè)主題或類別的許可證選擇和比較成為可能,并可訪問其SPDX標(biāo)識(shí)符和全文。下表列出了以下主題的權(quán)限和限制:

      1.鏈接

      許可的代碼與根據(jù)不同許可證許可的代碼的鏈接(例如,當(dāng)代碼作為一個(gè)庫提供時(shí))。

      2.分發(fā)

      向第三方分發(fā)代碼

      3.修改

      被許可人對(duì)守則的修改。

      4.專利授權(quán)

      保護(hù)被許可人免受代碼貢獻(xiàn)者就其貢獻(xiàn)提出的專利要求,保護(hù)貢獻(xiàn)者免受被許可人提出的專利要求。

      5.私人使用

      對(duì)代碼的修改是必須與社區(qū)共享還是可以私人使用(如公司內(nèi)部使用)

      6.分許可

      修改后的代碼是否可以根據(jù)不同的許可(如版權(quán))獲得許可,還是必須保留提供代碼時(shí)的同一許可。

      7.?????????TM授權(quán)

      被許可人使用與許可代碼或其貢獻(xiàn)者相關(guān)的商標(biāo)。

      許可

      最新版本

      發(fā)布時(shí)間

      鏈接

      分發(fā)

      修改

      專利授權(quán)

      私人使用

      分許可

      TM授權(quán)

      Academic Free License

      Lawrence E. Rosen

      3.0

      2002

      允許性

      允許性

      允許性

      允許性

      Affero General Public License

      Affero Inc

      2.0

      2007

      限制性

      除GNU AGPL外,其余均為限制性

      限制性

      ?

      ?

      ?

      Apache License

      Apache Software Foundation

      2.0

      2004

      允許性

      允許性

      允許性

      允許性

      Apple Public Source License

      Apple Computer

      2.0

      August 6, 2003

      允許性

      ?

      有限的

      ?

      ?

      ?

      ?

      Artistic License

      Larry Wall

      2.0

      2000

      有限制

      有限制

      有限制

      允許性

      有限制

      Beerware

      Poul-Henning Kamp

      42

      1987

      允許性

      允許性

      允許性

      允許性

      允許性

      BSD License

      Regents of the University of California

      3.0

      ?

      允許性

      允許性

      允許性

      Manually

      允許性

      Manually

      Boost Software License

      ?

      1.0

      August 17, 2003

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      Creative Commons Zero

      Creative Commons

      1.0

      2009

      公共領(lǐng)域

      公共領(lǐng)域

      公共領(lǐng)域

      公共領(lǐng)域

      公共領(lǐng)域

      CC BY

      Creative Commons

      4.0

      2002

      允許性

      允許性

      允許性

      允許性

      CC BY-SA

      Creative Commons

      4.0

      2002

      限制性

      限制性

      限制性

      限制性

      CeCILL

      CEA?/?CNRS?/?INRIA

      2.1

      June 21, 2013

      允許性

      允許性

      允許性

      允許性

      有限制

      Common Development and Distribution License

      Sun Microsystems

      1.0

      December 1, 2004

      允許性

      ?

      有限的

      ?

      ?

      ?

      ?

      Common Public License

      IBM

      1.0

      May 2001

      允許性

      ?

      限制性

      ?

      ?

      ?

      ?

      Cryptix General License

      Cryptix Foundation

      N/A

      1995

      允許性

      允許性

      允許性

      Manually

      ?

      Manually

      Eclipse Public License

      Eclipse Foundation

      2.0

      August 24, 2017

      有限的

      有限的

      有限的

      有限的

      Manually

      Educational Community License

      Indiana University

      1.0

      2007

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      European Union Public Licence

      European Commission

      1.2

      May 2017

      允許性, according to EU law (Recitals 10 & 15 Directive 2009/24/EC)

      限制性, ,有明確的兼容性列表

      限制性, ,有明確的兼容性列表

      限制性, ,有明確的兼容性列表

      FreeBSD

      The?FreeBSD?project

      N/A

      April 1999

      允許性

      允許性

      允許性

      Manually

      允許性

      允許性

      Manually

      GNU Affero General Public License

      Free Software Foundation

      3.0

      2007

      僅限GNU GPLv3

      限制性

      限制性

      否?network usage

      限制性

      GNU General Public License

      Free Software Foundation

      3.0

      June 2007

      僅與GPLv3兼容

      限制性

      限制性

      限制性

      GNU Lesser General Public License

      Free Software Foundation

      3.0

      June 2007

      有限制

      限制性

      限制性

      限制性

      IBM Public License

      IBM

      1.0

      August 1999

      限制性

      ?

      限制性

      ?

      ?

      ?

      ?

      ISC license

      Internet Systems Consortium

      N/A

      June 2003

      允許性

      允許性

      允許性

      Manually

      允許性

      允許性

      Manually

      LaTeX Project Public License

      LaTeX project

      1.3c

      ?

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      Microsoft Public License

      Microsoft

      N/A

      ?

      允許性

      允許性

      允許性

      允許性

      ?

      MIT license / X11 license

      MIT

      N/A

      1988

      允許性

      允許性

      允許性

      Manually

      允許性

      Manually

      Mozilla Public License

      Mozilla Foundation

      2.0

      January 3, 2012

      允許性

      限制性

      限制性

      限制性

      Netscape Public License

      Netscape

      1.1

      ?

      有限的

      ?

      有限的

      ?

      ?

      ?

      ?

      Open Software License

      Lawrence Rosen

      3.0

      2005

      允許性

      限制性

      限制性

      限制性

      ?

      OpenSSL license

      OpenSSL Project

      N/A

      ?

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      PHP License

      PHP Group

      3.01

      2019

      有限制

      有限制

      有限制

      有限制

      Manually

      Python Software Foundation License

      Python Software Foundation

      2

      ?

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      Q Public License

      Trolltech

      ?

      ?

      有限的

      ?

      有限的

      ?

      ?

      ?

      ?

      Sleepycat License

      Sleepycat Software

      N/A

      1996

      允許性

      有限制

      允許性

      Unlicense

      unlicense.org

      1

      December 2010

      允許性/公共領(lǐng)域

      允許性/公共領(lǐng)域

      允許性/公共領(lǐng)域

      ?

      允許性/公共領(lǐng)域

      允許性/公共領(lǐng)域

      ?

      W3C Software notice and License

      W3C

      凡代碼都有權(quán)利和義務(wù)@開源軟件許可類別分析

      20021231

      December 31, 2002

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      Do What The Fuck You Want To Public License?(WTFPL)

      Banlu Kemiyatorn,?Sam Hocevar

      2

      December 2004

      允許性/公共領(lǐng)域

      允許性/公共領(lǐng)域

      允許性/公共領(lǐng)域

      XCore Open Source License

      also separate "Hardware License Agreement"

      XMOS

      ?

      February 2011

      允許性

      允許性

      允許性

      Manually

      允許性

      ?

      XFree86 1.1 License

      The XFree86 Project, Inc

      ?

      ?

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      zlib/libpng license

      Jean-Loup Gailly and Mark Adler

      ?

      ?

      允許性

      ?

      允許性

      ?

      ?

      ?

      ?

      4?????????參考

      https://opensource.org/licenses

      https://www.synopsys.com/blogs/software-security/5-types-of-software-licenses-you-need-to-understand/

      https://choosealicense.com/

      https://resources.whitesourcesoftware.com/blog-whitesource/open-source-licenses-explained

      https://en.wikipedia.org/wiki/Comparison_of_free_and_open-source_software_licences

      軟件開發(fā)

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請(qǐng)聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時(shí)內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:4種方法來對(duì)比兩個(gè)Excel文件
      下一篇:怎么給WPS表格添加單元格批注(wps表格怎么插批注)
      相關(guān)文章
      亚洲日本乱码在线观看| 区久久AAA片69亚洲| 亚洲精品高清视频| 国产v亚洲v天堂无码网站| 久久久精品国产亚洲成人满18免费网站| 精品亚洲国产成人av| 亚洲精品天堂成人片AV在线播放| 97久久国产亚洲精品超碰热| 亚洲综合校园春色| 亚洲 暴爽 AV人人爽日日碰| 中文字幕乱码亚洲精品一区| 99久久国产亚洲综合精品| 亚洲色www永久网站| 亚洲欧洲精品成人久久曰| 亚洲国产精品成人AV在线| 亚洲AV无码成人网站在线观看| 亚洲AV无码AV吞精久久| 香蕉视频亚洲一级| 亚洲国产精品嫩草影院久久| 亚洲综合最新无码专区| 亚洲色精品aⅴ一区区三区| 亚洲线精品一区二区三区| 久久亚洲精品成人综合| 7777久久亚洲中文字幕蜜桃| 91亚洲导航深夜福利| 亚洲国产日韩女人aaaaaa毛片在线| 亚洲伊人久久大香线蕉在观| 91在线亚洲综合在线| 亚洲AV日韩综合一区| 亚洲国产午夜中文字幕精品黄网站| 亚洲精品一级无码鲁丝片| 亚洲午夜国产精品无码| 亚洲成在人天堂在线| 亚洲女人初试黑人巨高清| 国产成人精品日本亚洲11| 亚洲AV无码专区国产乱码不卡 | 久久精品九九亚洲精品| 亚洲成a人片7777| 亚洲乱色伦图片区小说| 亚洲国产精品日韩| 亚洲成A人片在线观看无码不卡|