概览:
(1)BSD许可--它要求版权和著者身份申明;
(2)GPL--通用公共许可("CopyLeft")禁止派生或发行产品的限制;
(3)LGPL--库/次级GPL,它不同于GPL许可证,在这个许可证下,库(函
数库)可以自由地联接到专有软件;
(4)Artistic许可--使作者保持对进一步开发的控制;
(5)Netscape公共许可(NPL)--基于GPL精神的新的许可证,但是保持
了对源码更多的控制和所有权;
(6)公共域(Public Domain)--通常用于决定性的算法以鼓励广泛使用,通常由美国政府使用。
具体来说:
1.GPL许可证:
GPL许可证,全称为“GNU 通用公共许可证(The GNU General Public License,GPL)”,是自由软件联盟GNU的开放源码软件许可证的一种,是开放源码软件领域最富盛名的一种许可证。同时,GPL也是开放源码软件领域对被许可人权利限制最严的许可证,它集中体现了纯粹的Copyleft精神。
GPL首先是承认软件的版权――软件有原始的版权所有者,然后纳入自由软件的版权许可约束。在承认版权的前提下,通过软件的版权许可来实现自由权利的要求。GPL许可证最重要的特点在于它要求根据GPL许可证发布的软件(如:最有影响力的Linux)修改、翻译的演绎作品,甚至只要其任何一部分代码是以 GPL发布的,那么全部程序也必须受GPL许可证的约束,即继续遵守GPL许可证的规定,有些人将其称之为GPL的“病毒效应”。
2. LGPL许可证
LGPL许可证,全称为“GNU 宽通用公共许可证(The GNU Lesser General Public License,LGPL)”被用于一些(但不是全部)GNU程序库。
这个许可证以前被称为库通用公共许可证。LGPL许可证适用于特殊设计的函数库,且与原来的通用公共许可证有很大的不同,给被许可人较为宽松的权利,所以也叫做“较宽松公共许可证”。在特定的函数库中使用它,以准许私有的程序可以与这些函数库连结。
3.BSD许可证
BSD许可证(BSD license)是“Berkeley Software Distribution license” 的首字母缩写,是自由软件中使用使用最广泛的许可证之一。
BSD软件就是遵照这个许可证来发布,该许可证也因此而得名。
BSD许可证具备开源软件许可证普遍的要求,但它只要求被许可者附上该许可证的原文以及所有开发者的版权资料。通俗地说,BSD许可证看重的是“名”,在“利”方面,BSD许可证给予被许可者充分使用(包含商业使用)源代码的权利。
BSD许可证完全不会产生像GPL许可证那样的“病毒效应”,为开源软件,特别是作为学校、公共科研机构科研成果的开源软件转化为产品等充分利用敞开了大门。
4. Artistic许可证
其特点是使作者保持对进一步开发的控制。
5. MPL许可证
MPL(MPL是The Mozilla Public License的简写),最初是1998年初Netscape的 Mozilla小组为其开放源代码软件项目设计的软件许可证。MPL许可证出现的最重要原因就是Netscape公司认为GPL许可证没有好好平衡开发者对源代码需求与他们获得的利益。MPL继承了GPL精神,但是保持了对源代码的更多的控制和所有权。
6.公共领域许可证
公共领域许可证(Public Domain)。又叫作”无版权许可(Not Copyrighted)”或“无约束许可(No Restrictions)”。它通常用于决定性的算法以鼓励广泛使用,通常由美国政府使用。
7.Apache Licence 2.0 许可证
Apache Licence是著名的非盈利开源组织Apache采用的协议。该协议和BSD类似,同样鼓励代码共享和尊重原作者的著作权,同样允许代码修改,再发布(作为开源或商业软件)。需要满足的条件:需要给代码的用户一份Apache Licence;如果你修改了代码,需要再被修改的文件中说明;在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明;如果再发布的产品中包含一个Notice文件,则在Notice文件中需要带有Apache Licence。你可以在Notice中增加自己的许可,但不可以表现为对Apache Licence构成更改。
Apache Licence也是对商业应用友好的许可。使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。
这篇文章也有一些借鉴意义(附各种协议官网):