首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

开源协议:GPLLGPLBSDApache

在我们所能想到的应用领域,都有开源软件存在(例如开源CMS WordPress、Drupal)。然而很多人对开源许可并不了解,本文介绍开源领域常用的几种许可协议以及它们之间的区别。 什么是许可协议?...而开源许可协议(open-source license)使这些事情变得简单,开发者很容易向一个项目贡献自己的代码,它还可以保护你原始作者的身份,使你至少获得认可,开源许可协议还可以阻止其它人将某个产品据为...以下是开源界的 5 大许可协议。 GNU GPL  GNU General Public Licence(GPL) 有可能是开源界最常用的许可模式。...该协议有多种版本,最主要的版本有两个,新 BSD 协议与简单 BSD 协议,这两种协议经过修正,都和 GPL 兼容,并为开源组织所认可。...License  如何选择不同的开源协议 之前对开源软件的使用在授权上存有顾虑,现在比较清楚了~~~  参考推荐: 开源许可协议:GPL/LGPL/BSD/MIT/Apache/CC

87350

开源协议区别

image.png 世界上的开源许可证(Open Source License)大概有上百种,今天我们来介绍下几种我们常见的开源协议。...BSD开源协议:是一个给于使用者很大自由的协议。可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。...GPL GPL (GNU General Public License) :GNU通用公共许可协议Linux 采用了 GPL。...这也就是为什么我们能用免费的各种linux,包括商业公司的linuxlinux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。...使用EPL协议,需要遵守以下规则: 当一个Contributors将源码的整体或部分再次开源发布的时候,必须继续遵循EPL开源协议来发布,而不能改用其他协议发布.除非你得到了原"源码"Owner 的授权

91150
您找到你想要的搜索结果了吗?
是的
没有找到

常见的开源协议

BSD License BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。...我们很熟悉的Linux就是采用了GPL。GPL协议和BSD, Apache Licence等鼓励代码重用的许可很不一样。...这也就是为什么我们能用免费的各种linux,包括商业公司的linuxlinux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。...LGPL是GPL的一个为主要为类库使用设计的开源协议。和GPL要求任何使用/修改/衍生之GPL类库的的软件必须采用GPL协议不同。...LGPL允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码。这使得采用LGPL协议开源代码可以被商业软件作为类库引用并发布和销售。

96320

常见开源协议介绍

BSD开源协议:是一个给于使用者很大自由的协议。可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。...「Linux采用了GPL」 GPL协议和BSD, Apache Licence等鼓励代码重用的许可很不一样。...这也就是为什么我们能用免费的各种linux,包括商业公司的linuxlinux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。...因此LGPL协议开源代码很适合作为第三方类库被商业软件引用,但不适合希望以LGPL协议代码为基础。 商业软件采用。...使用EPL协议,需要遵循以下规则: 当一个Contributors将源码的整体或部分再次开源发布的时候,必须继续遵循EPL开源协议来发布,而不能改用其他协议发布.除非你得到了原"源码" Owner的授权

97220

开源许可协议介绍

开源许可协议的产生 开源许可协议 是为了维护开源项目的作者和贡献者的合法权利,保证这些软件不被一些商业机构或个人窃取,影响软件的发展而出现的。...何为开源许可协议 开源许可协议详尽表述了你获得代码后拥有的权利,可以对别人的作品进行何种操作,何种操作又是被禁止的。...如果我们Copy了别人的代码或者文字同时没遵循许可协议的话,我们的作品会因触犯别人的权益而违法。 如何选择开源许可协议 开源研究院认可的许可有60多种。但常用的也就几种。...阮一峰老师画的 开源许可协议放在哪边 如果是项目,可以在项目根目录创建一个 LICENSE.txt 文件来放开源许可协议的内容;如果是一个文件,可以在文件开头的注释里放开源许可协议的内容;如果是文章,可以在文章结尾放开源许可协议的内容...拓展阅读 如何为你的代码选择一个开源协议 给博客配上CC协议 ---- 本文遵守创作共享CC BY-NC-SA 4.0协议 网络平台如需转载必须与本人联系确认。

49020

开源许可协议比较

BSD 和MIT一样宽松,多了一条“不能用开源代码的作者/机构名字和原来产品的名字做市场推广”。 Apache 如果修改了代码,需要再被修改的文件中说明。...在延伸的代码中(修改和有源代码衍生的代码中)需要带有原来代码中的协议,商标,专利声明和其他原来作者规定需要包含的说明。...LGPL 允许商业软件通过类库引用(link)方式使用LGPL类库而不需要开源商业软件的代码(相当于一个为主要为类库使用设计的开源协议)。...如果修改LGPL协议的代码或者衍生,则所有修改的代码,涉及修改部分的额外代码和衍生的代码都必须采用LGPL协议。...GPL 基本上限制最严格了,协议传染度最高。

85220

linux|BGP协议

边界网关协议 (BGP) 就是互联网的邮政服务。当有人把一封信投进邮筒时,邮政服务就会处理这封邮件,并选择一条快速、高效的路线将这封信投递给收件人。...BGP 是通过启用数据路由来使互联网正常工作的协议。当一位在新加坡的用户加载一个源服务器位于阿根廷的网站时,BGP 就是使这种通信快速、高效地进行的协议。 什么是自治系统?...这是通过对等会话完成的,其中,每一个自治系统都会通过 TCP/IP 协议连接到相邻的自治系统,以共享路由信息。通过这些信息,每个自治系统都能够正确地路由出站数据。 在这里,我们上面所做的比喻不再成立。...自治系统可从多种内部协议中选择,来连接内部网络上的路由器。 外部 BGP 就像国际运输。在国际上运送邮件时,需要遵循特定的标准和规则。...同样,每个自治系统都可以有自己的内部路由协议,用于路由自身网络内部的数据。

3K20

github 各种开源协议讲解

而GPL协议就像一种开源“病毒”,任何一款沾染上他的软件都不得不保持开源和免费。 根据国外论坛Robbin的解释:“GPL是针对软件源代码的版权,而不是针对软件编译后二进制版本的版权。...我们也可以简单理解为:LGPL协议开源代码商业软件可以使用,但不能修改LGPL协议的代码。...Apache License Apache Licence是著名的非盈利开源组织Apache采用的协议。...BSD开源协议(Berkerley Software Distribution) 目前BSD开源协议分为BSD 3-Clause和BSD 2-Clause两种,分别代指两个条款和三个条款的BSD协议。...应该说,BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。

90940

github常见开源协议概括

但是它有很多限制: 你必须开源,无论有没有修改。 协议和版权信息要保留说明 协议不能私自更改,与原版本一致。 你修改的地方要说清楚。...GNU Affero General Public License v3.0 允许个人使用、商业使用、专利授权、复制、分发和修改,作者免责,贡献者可以快速专利授予,需要保留版权信息、必须开源、不允许更换协议...Mozilla Public License 2.0 许个人使用、商业使用、专利授权、复制、分发和修改,作者免责,需要保留版权信息、必须开源,不允许更换协议(但允许更换成某些GNU协议),不允许使用商标...使用推荐 1、普通开发者 如果你是信仰开源大法的普通开发者,使用 MIT License 协议即可,它会保留你的版权信息,又允许他人进行修改。...2、用到了GNU的开发者 如果你用到了GNU的库,由于“传染性”,不允许更换协议,必须选择GNU相关的协议。 3、开源库开发者 推荐使用GNU LGPL相关协议

3.3K10

开源许可证协议

一直以来,GPL是Linux软件及各种开源项目中比较受欢迎的项目协议; 首先借用有心人士的一张相当直观清晰的图来划分各种协议开源许可证GPL、BSD、MIT、Mozilla、Apache和LGPL的区别...以下是上述协议的简单介绍: BSD开源协议 BSD开源协议是一个给于使用者很大自由的协议。基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。...使用者也可以在需要的时候修改代码来满足需要并作为开源或商业产品发布/销售。 GPL 我们很熟悉的Linux就是采用了GPL。...这也就是为什么我们能用免费的各种linux,包括商业公司的linuxlinux上各种各样的由个人,组织,以及商业软件公司开发的免费软件了。...其它细节如再发布的时候需要伴随GPL协议等和BSD/Apache等类似。 LGPL LGPL是GPL的一个为主要为类库使用设计的开源协议

1.3K50

Linux网络-HTTP协议

Linux网络:HTTP协议 零、前言 HTTP协议 1、认识URL 2、urlencode和urldecode 3、HTTP协议格式 1)HTTP请求 2)HTTP响应 4、HTTP的方法 5、HTTP...的状态码 6、HTTP常见的Header 7、Cookie和Session 零、前言 在此之前我们对网络套接字编程有了一定的基础和了解,接下来我们将自顶向下学习Linux网络分层协议栈,透过对协议栈的深入学习从而加深我们对网络的理解...HTTP协议 概念及介绍: HTTP(Hyper Text Transfer Protocol)协议又叫做超文本传输协议,是一个简单的请求-响应协议,HTTP通常运行在TCP之上 在编写网络通信代码时...,我们可以自己进行协议的定制,但实际有很多优秀的工程师早就已经写出了许多非常成熟的应用层协议,其中最典型的就是HTTP协议 1、认识URL URL(Uniform Resource Lacator...,而不叫做文本传输协议,就是因为有很多资源实际并不是普通的文本资源 从这里的路径分隔符,我们可以分辨服务器的平台:Linux的路径分隔符是/,Windows的路径分隔符是\ 查询字符串 用于获取资源时

1.5K20

Linux网络-HTTPS协议

HTTPS 零、前言 一、HTTPS协议 二、加密方式 三、中间人攻击 四、PKI 五、数字签名技术 零、前言 本章是继HTTP协议后的一篇关于HTTPS协议的拓展 一、HTTPS协议 概念及介绍...: HTTP请求无论是用GET方法还是POST都是不安全的,使用HTTP协议传输的数据都是在网络里面裸奔(可以通过抓包工具抓到) HTTPS是身披SSL外壳的HTTP,是一种通过计算机网络进行安全通信的传输协议...,经由HTTP进行通信,利用SSL/TLS建立全信道,对数据包进行加密和解密 HTTPS使用的主要目的是提供对网站服务器的身份认证,同时保护交换数据的隐私与完整性 注:TLS是传输层加密协议...,前身是SSL协议,有时候两者不区分 二、加密方式 加密的方式可以分为对称加密和非对称加密 对称加密和非对称加密: 采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密...公钥只是一串数字,需要有一种手段去认证公钥的真正主人,解决方案就是PKI 公开密钥算法中,所有的网络通信都会存在中间人攻击,这是务必要记住的一点,在HTTPS协议中必须引入PKI技术解决身份验证的问题,

1.4K30

Linux网络-IP协议

文章目录 零、前言 一、网络层 理解路由选择 二、IP协议 三、网段划分 四、IP地址数量限制 五、私有和公网IP地址 NAT技术 六、路由 零、前言 本章主要讲解学习网络层的作用, 深入理解IP协议的基本原理...,但要扩大应用范围,连接不同的局域子网,就需要借助网络层处理各个网络子网的协议,从而进行计算机的网络互连,所以网络层在 TCP/IP 协议体系中叫网际互连层 网络层的主要作用: 屏蔽网络差异,提供透明传输...这个NSAP就是由对应网络所运行的网络层通信协议来定义的,在目前最常见的TCP/IP协议网络中,这个协议就是IP协议,对应的NSAP就是IP地址 在数据链路层中传输的是一个个以许多字节为单位的帧,在每个帧的帧头都有源节点的...节点: 主机和路由器的统称 协议头格式: 说明: 4位版本号(version): 指定IP协议的版本, 对于IPv4来说, 就是4 4位头部长度(header length): IP头部的长度是多少个...此时,需要 NAT 设备根据传输层信息或其他上层协议去区分不同的会话,并且可能要对上层协议的标识进行转换,比如 TCP 或 UDP 端口号。

3.9K20

Linux网络-MAC协议

Linux网络-MAC协议 零、前言 一、数据链路层 二、以太网协议 1、认识以太网 2、以太网原理 3、以太网格式 4、MAC地址 5、认识MTU 三、ARP协议 四、RARP协议 零、前言 本章主要讲解...Linux网络中的数据链路层-以太网协议 一、数据链路层 示图: 数据传输大部分是跨网段进行的,而多个主机共同组成一个网段,不同的网段通过路由器连接(路由器同样也是主机),所以数据跨网段传输实质就是数据在主机间传输...ARP不是一个单纯的数据链路层的协议, 而是一个介于数据链路层和网络层之间的协议 示图: ARP协议的作用: ARP协议建立了主机 IP地址 和 MAC地址 的映射关系 在网络通讯时,源主机的应用程序知道目的主机的...IP地址和端口号,却不知道目的主机的硬件地址 数据包首先是被网卡接收到再去处理上层协议的,如果接收到的数据包的硬件地址与本机不符,则直接丢弃,因此在通讯前必须获得目的主机的硬件地址 ARP协议的工作流程...地址的一个TCP/IP协议 也就是说,某些情况下我们可能只知道一台主机的MAC地址,此时要得知该主机的IP地址就可以使用RARP协议 理论上来说,RARP协议一定比ARP协议简单,因为既然我们已经知道一台主机的

2.4K10

一图说明常见开源协议

图片常见两类开源开源协议上百种。常见的开源许可协议主要有 Apache、MIT、BSD、GPL、LGPL、MPL等,可以大致分为两大类:宽松型开源许可协议和传染型开源许可协议。...2、传染型传染型开源许可协议有GPL 、LGPL、MPL。协议说明1、Affero GPL (AGPL) 如果云服务(即 SAAS)用到的代码是该许可证,那么云服务的代码也必须开源。...3、基于 LGPL 开源协议的库开发的软件,视是否只是调用来看,如果只是连接、调用,则可以封闭源代码,否则也必须要开源。...这个是官方修改开源协议(从 AGPL 到 SSPL,基于修改协议前的最后一个稳定版本4.0.3),存在较大争议,开放源代码促进会 OSI 甚至认为 SSPL 就不是开源许可协议。...2、避免开源软件不同开源协议带来的法律风险、公关危机与安全隐患等问题。3、了解开源风险的典型案例,对开源风险的防控措施能提前准备。

2.8K20

ssl协议开源实现openssl

ssl协议 SSL: (Secure Socket Layer)安全套接层,ssl是一套安全协议,被应用层调用,当http调用ssl协议时被称为https,当ftp调用ssl协议时被称为sftp。...lls是一个协议的集合 ,其中包括: Handshake协议:包括协商安全参数和密码套件、服务器身份认证(客户端身份认证可选)、密钥交换 ChangeCipherSpec 协议:一条消息表明握手协议已经完成...Record 协议:包括对消息的分段、压缩、消息认证和完整性保护、加密等 HTTPS 协议:就是“HTTP 协议”和“SSL/TLS 协议”的组合。...服务端使用自己的私钥解密收到的加密过的对称密钥, 双方使用对称密钥进行通信,(http协议调用ssl协议对自身的数据进行密钥加密,被加密的http数据为二进制) ssl协议开源实现:OpenSSL...ssl作为协议出现,协议是被具体定义的概念,openssl时ssl的具体的实现,openssl也是一套开源的软件。

1.7K31
领券