有风塘主
发布于 2024-12-09 / 74 阅读
0
0

一文看懂开源软件授权协议License

摘要

一文看懂常见开源授权协议License概念与区别。常见的开源协议有:GPL、LGPL、MIT、BSD、MPL、Apache,本文主要介绍各个协议的概念、特点以及它们之间的区别。

协议对比

协议

协议许可

协议要求

商用说明

GPL(V3)

可以复制、修改、分发源代码

要求使用者也提供源代码;要求继承使用GPL协议

不适合商用

LGPL(V3)

可以复制、修改、分发源代码

特定条件下不要求提供源代码,特定条件下不要求继承LGPT协议

可以商用,不能修改开源代码

MIT

可以复制、修改、分发源代码

要求使用者附有引用的开源MIT协议

可以商用,也能修改并重新出售开源代码

BSD

可以复制、修改、分发源代码

要求使用者保留BSD协议原文。

可以商用,也能修改源代码

Apache(2.0)

可以复制、修改、分发源代码

要求使用者附有Apache协议

可以商用,也能修改并重新出售开源代码,限制商标使用

MPL

可以复制、修改、分发源代码

有条件的共享使用MPL协议

可以商用,也能修改,但修改后的代码版权归软件的发起者

GPL: GNU General Public License

通常说的GPL是说的它的V3版本,发布于2007-06-29。它提供了宽松的协议许可,并规范了一些法律用于。基于GPL(V3)协议,开源软件的使用者可以:

  • 复制、修改开源代码

  • 再次分发、传递开源给其他人

  • 已获取开源软件作者授予的专利许可使用权

同时,GPL(V3)协议也要求使用者:

  • 保留开源软件的许可证以及版权申明

  • 需要开源自己的软件代码

  • 必须也使用GPL协议或一定条件下的兼容协议

  • 不可以将开源代码用于商业化的软件中

LGPL: GNU Lesser General Public License

这里指的是LGPL的V3版本,相比对GPL(V3),它对使用者的要求更少。

基于LGPL(V3)协议的开源代码的使用者可以:

  • 复制、修改开源代码

  • 再次分发、传递开源给其他人

  • 已获取开源软件作者授予的专利许可使用权

  • 可以将开源代码用于商业化的软件中

同时,LGPL(V3)协议也要求使用者:

  • 保留开源软件的许可证以及版权申明

  • 一定条件下应当使用GPL协议或其兼容协议

MIT

MIT是一个使用非常广泛的宽松许可协议,其协议内容非常简洁,且许可很自由。

参考

1、https://blog.csdn.net/iteye_3592/article/details/82408523

2、https://cloud.tencent.com/developer/article/2141158


评论