引用文章
讲述MongoDB的开源许可证: [开源许可证,欢迎来到云时代]()https://3g.163.com/dy/article/HEHAH8HU0511CUMI.html)
开源软件许可证类型完整指南 2020
开源许可证分类
首先看是否是OSI(Open Source Initiative)认证的许可证, 包括: GPL MPL LGPL AGPL MIT BSD Apache. 其他, 包括SSPL(APGL + Common Clause), Elastic License V2.
在OSI之下, 分为Copyleft(著佐权)和Permissive(宽松许可证).
Copyleft会要求基于本软件的代码也要开源, Permissive则无此要求.
Copyleft包括GPL, 轻度Copyleft包括 CDDL MPL Eclipse.
Permissive包括MIT BSD Apache.
许可证排名
MIT Apache GPL
MIT
也称为X许可证或者X11许可证
MIT内容与条款3伯克利许可证(3-clause BSD license)内容颇为近似,但是赋予软件被授权人更大的权利与更少的限制。
- 被授权人有权利使用、复制、修改、合并、出版发行、再授权及出售软件及软件的副本。
- 被授权人可根据程序的需要修改授权条款为适当的内容。
- 在软件和软件的所有副本中都必须包含版权声明和许可声明。
- MIT的内容可依照程序著作权者的需求更改内容。此亦为MIT与BSD(The BSD license, 3-clause BSD license)本质上不同处。
- MIT条款可与其他授权条款并存。另外,MIT条款也是自由软件基金会(FSF)所认可的自由软件授权条款,与GPL兼容。
Apache
Apache 许可证2.0和GNU GPL之间的区别
GNU GPL是一个著佐权许可证。因此,使用GPL许可证组件的软件,必须发布其源代码,和所有修改及发行整个源代码的权利。Apache 许可证2.0 不强制这样的条款,不强制你发布修改过的版本。此外,你能选择使用不同的许可证发布你修改过的版本(然而,对未被修改过的代码,要求你保留Apache 许可证)。
GPL中不包含特定的要求(这个要求指对程序做广告)。
在Apache2.0和伯克利之间的区别
伯克利许可证是另一个高度宽松许可证,允许你修改和按照自己的意愿选择许可证,并再发行伯克利许可证下软件。早期Apache许可证和初版伯克利(后来修改版)许可证一样,但Apache2.0把二者区分开。这两者之间关键的区别:
明确授予专利权:Apache许可证2.0明确规定,当使用、修改或发行Apache许可证下的软件时,授予专利权;它也列出了撤销授予的情况。
清晰定义使用概念:Apache 2.0 清晰定义它所使用的所有的条款和概念,几乎不会引起歧义。
重复使用,不用改写:Apache2.0能很容易的被其他项目使用,无需对许可证文档本身做任何改写。