全方位解读Web3域名:DID基石NFT新增长点

Posted 初晓链研究员

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了全方位解读Web3域名:DID基石NFT新增长点相关的知识,希望对你有一定的参考价值。

1.Web3域名在NFT市场整体低迷的背景下表现出色;

2.Web3域名有庞大的用户群体和巨大的上升空间;

3.Web3域名是用户重要的Web3身份凭证,可使用域名访问全链应用;

4.Web3域名长期来看使用大于炒作。

今年下半年,Web3域名在NFT市场中表现亮眼。

以ENS为例,ENS在过去三个月的交易量环比增长22.48%,域名注册总量突破260万。随着交易量、域名注册量和用户量的增长,ENS市值在过去三个月增长了38.62%。

在过去三个月里ENS高价成交的NFT在其历史前十中占了六席。

除了ENS,SPACE ID、Unstoppable Domains等域名项目的域名注册量和用户量迎来快速增长。

在快速增长的域名赛道里,哔哔News发现Web3域名已经成为公链的标配,哔哔News整理的38个域名项目部署的公链接近30条,新老公链均有域名项目。

新公链中例如Aptos、Sui已经推出链上原生域名项目,Aptos链上域名项目Aptos Names在Aptos主网上线初期就已开放用户注册域名。

Web3域名快速增长的背后,是在传统域名基础上的Web3创新。

传统域名市场在过去20年间迎来快速增长,已接近饱和。而Web3域名尚处在发展初期,对标Web2传统域名,成为域名市场新的增长点。

Web3域名相比于Web2域名,在映射对象、载体、方式、生态上有本质区别。

  • 映射对象方面,Web3域名映射钱包地址,Web2域名映射服务器。

  • 载体方面,Web3域名载体是NFT,Web2域名由权威机构记录。

  • 方式上,Web3域名采用去中心化解析,Web2域名采用中心化解析。

  • 生态方面,Web3域名生态完全开放,Web2域名参与者需要许可。

此外,Web3域名去中心化、抗审查、用户控制数据等特点解决了Web2域名存在的痛点。

Web3域名以NFT形式存在,可以通过NFT市场交易,在近期NFT市场交易量整体低迷的情况下,ENS、SPACE ID等Web3域名的交易量保持增长,交易量名列前茅。

Web3域名注册量和用户群体今年快速增长,其中Unstoppable Domains、ENS的域名注册量均已突破200万,ENS用户数超57万。

Web3域名的功能有集合地址、用户账号等信息;聚合用户数据;访问域名支持的dApp;社交账户昵称。Web3域名旨在打造用户的Web3名片,用户使用域名参与社交、体验元宇宙项目。

本文将阐述Web3域名发展的四点趋势:

1.Web3域名中多链部署、多类别域名项目增多;

2.与社交图谱、声誉平台等其他DID应用合作加深;

3.使用大于炒作;

4.域名竞争格局与公链竞争格局趋同。

哔哔News整理了38个Web3域名项目,涉及近30条公链。(以下是数据表格链接

 (部分Web3域名项目)

Web3域名是近期NFT市场主要的增长点

Web3域名与DNS的重要区别在于其载体,DNS由权威机构记录,Web3域名由链上NFT记录。Web3域名以NFT形式表现,可以在NFT市场上交易。

今年下半年,NFT市场整体表现低迷,Web3域名则逆势而上,成为NFT市场主要的增长点。

本文选取ETH链上的ENS和BNB Chain链上的SPACE ID举例说明。

NFTGo数据显示,最近三个月ENS交易量为8919万美元,环比增长22.48%,市值达9595万美元,环比增长38.62%。

NFTGo数据显示,ENS颇受NFT巨鲸青睐。持有ENS域名的NFT巨鲸数量为683,在ETH链上NFT项目中排名首位。(注:NFTGo对NFT巨鲸的注释为持有价值超100万美元的NFT收藏者)

SPACE ID最近30天的交易量排名BNB Chain链上首位。NFTScan数据显示,SPACE ID最近30天交易量为18,665.39BNB,NFT转移次数超22万次,链上转移次数也排名首位。

 ENS和SPACE ID交易量的增长与其域名注册数量和持有者数量有关。

数据网站显示,ENS注册域名达267万个,NFT持有者数量为56.5万。SPACE ID目前域名数量超26万个,NFT持有者数量为8.6万。

两者虽然平均交易价格较低,但NFT数量和庞大的持有者群体提升其交易量。

域名成为NFT市场新宠的另一个重要原因在于其价格,以ENS为例,ENS中多数NFT价格低于0.01ETH,NFT收藏者可以一次性购买多个域名。域名因此成为NFT收藏者扫货的重要目标。

Web3域名的功能

Web3域名是去中心化身份认证(DID)的基石,为用户提供Web3的身份名片。

哔哔News通过整理38个Web3域名项目,总结了Web3域名的四个功能:集合地址、用户账号等信息;聚合用户数据;访问域名支持的dApp;社交账户昵称。

(一)集合地址、用户账号等信息

Web3域名可以直接与钱包地址、邮箱账号、NFT交易平台账户等绑定,用户可以直接使用统一的域名接收、发送Token和NFT。

以ENS为例,用户可以直接输入域名管理资产,而不用使用较繁琐的钱包地址,目前Etherscan支持用户搜索ENS域名对应的钱包地址和域名到期时间。

(二)聚合用户数据

Web3域名可以作为用户的Web3身份名片和信息数据存储工具。

以.bit为例,.bit支持用户创建去中心化个人网站,个人网站中可以展示钱包地址、dApp、社交账号、DNS、创作内容等信息,所有数据存储通过IPFS实现。

用户可以将个人网站作为Web3身份名片发送给朋友,参与社交。

(三)访问域名支持的dApp

Web3域名服务商与各种类型(DeFi、加密钱包、NFT等)的dApp集成,用户可以直接使用域名访问这些dApp。

以ENS和.bit为例,ENS官网显示,ENS已支持59款钱包、439款链上应用(类型包括DeFi、NFT、DAO工具、SocialFi应用等)、14款浏览器插件。

.bit官网显示,.bit生态已有107项应用,类别包括DID、NFT市场、钱包、数据平台、DeFi、SocialFi应用等。

域名的生态具有较好的可扩展性,生态支持的应用类型全面,有单链和多链应用,有L1和L2应用,用户使用域名即可充分体验Web3生态,域名的数据存储功能为用户在不同应用间切换提供便利。

(四)社交账号昵称

Web3域名持有者可以将其作为Web2应用(Twitter、Facebook等)的社交账号昵称,在Web3和Web2社交中拥有统一的身份名片。

例如以太坊联合创始人Vitalik Buterin将vitalik.eth作为推特账号昵称。

 上文提到,Web3域名聚合钱包地址、邮箱、NFT等信息,将Web3域名作为社交账号昵称有三方面好处:精简、亮明Web3身份、提供其他用户深入了解用户的渠道。

Web3域名兼具人类可读性、去中心化,用户隐私保护存疑

Zooko三角悖论是指网络中域名系统的三个理想性质的三难困境,即域名系统不可能同时具备去中心化、安全性和人类可读性。Web3域名兼具人类可读性、去中心化,但用户的隐私保护却因区块链的透明性存在质疑。

 去中心化是Web3应用相较于Web2应用的本质区别,所有数据存在链上,数据由用户控制,解决了Web2域名存在的中心化问题。

人类可读性指的是向用户提供有意义的、令人难忘的名字。相较于繁琐的钱包地址,用户更容易记住的是比较短且有记忆点的字符。

Web3域名弥补了钱包地址人类可读性差的缺陷,在域名中可以加入各类符号(字母、数字、emoji等),创建容易展示且具有用户个人风格的域名。

用户隐私保护的问题在于域名与钱包地址、账户名、邮箱等用户信息绑定,通过个人主页将信息展示出来,任何人都可以通过区块浏览器查询用户信息,用户的账户信息、交易信息等隐私难以得到保护,用户账号具有被攻击的风险。

Web3域名项目介绍

哔哔News统计了部署在30条公链上的38个Web3域名项目,统计的公链中,ETH、BNB Chain、Polygon链上Web3域名项目数量排名前三位。

在这些域名当中,域名注册数量排名前三位的是Handshake、Unstoppable Domains、ENS。Handshake域名注册量超过700万,Unstoppable Domains和ENS域名注册量均超过200万。

除了以上三者,Bonfida、.bit、SPACE ID、Tezos Domains的域名注册量超过10万。

本文将介绍5个Web3域名项目:Unstoppable Domains、ENS、Handshake、.bit、SPACE ID。

(一)Unstoppable Domains

1.简介

Unstoppable Domains是NFT域名提供商,用户可注册后缀为.crypto/.nft/.x/.wallet等的域名,域名与钱包地址绑定,输入域名即可接收、发送和存储加密资产。

官网显示,Unstoppable Domains已支持294种Token,集成472款应用,用户可直接使用域名访问这些应用。

域名持有者可基于域名打造个性化Web3主页,展示社交账号、NFT收藏品、NFT化身、链上成就。

NFTgo数据显示,目前Unstoppable Domains域名注册量超270万。

Unstoppable Domains的特点在于更强调NFT域名,域名用例与NFT场景结合更加广泛。

2.费用

用户可以一次性付费即可永久拥有域名,费用在5美元到几十万美元不等。

3.生态

Unstoppable Domains官网显示,其与472个应用集成,域名持有者可直接访问这些应用。

这些应用的用例包括交易域名(如OpenSea)、支付(如MoonPay)、存储和管理域名(如Trust Wallet)、通信(如Skiff Mail)、域名工具(如Unstoppable Transactions)、去中心化网站(如Brave Browser)等。

Unstoppable Domains支持ETH、Polygon、Zilliqa链上应用。

4.融资信息

Unstoppable Domains在今年7月完成6500万美元的A轮融资,估值达到10亿美元。

本轮融资由Pantera Capital领投,Mayfield、Gangeels、Alchemy Ventures、Redbeard Ventures、Spartan Group、OKG Investments、Polygon、CoinDCX、CoinGecko等参投。

(二)ENS

1.简介

ENS于2017年5月上线以太坊主网,是以太坊链上最大的域名服务商,用户可注册后缀为.eth的域名,域名持有者可直接使用域名接收、发送和存储以太坊链上资产。

官网显示,目前域名注册量达262万,用户数超57万,ENS已与507个应用实现集成,域名可直接使用域名访问这些应用,这些应用包括Uniswap、OpenSea、Decentraland等,与Decentraland的集成意味着ENS域名可以作为元宇宙的身份。

ENS兼容DNS域名,用户如果已经拥有DNS域名(如.com、.io),可以在ENS中仍旧使用DNS域名。

2.费用

ENS 的域名服务按照域名的字符长度进行阶梯计价付费。

长度为5个字符的域名:每年支付5美元;

长度为4个字符的域名:每年支付160美元;

长度为3个字符的域名:每年支付640美元。

3.协议收入

Token Terminal数据显示,最近30天ENS协议收入为356万美元。最近30天的最高单日收入是9月26日的17.4万美元。近半年的最高单日收入是5月2日的196.4万美元。

4.估值

CoinMarketCap数据显示,10月12日ENS的市值为3.3亿美元,最近半年估值的最高点是5.2亿美元(5月3日),目前相较于半年高点降低1.9亿美元,降幅为36.5%,估值相对偏低。

(三)Handshake

1.简介

Handshake是namebase开发的去中心化域名系统,于2020年3月上线主网。Handshake允许任何人登记顶级域名,可以是传统顶级域名如my.wallet/,也可以是自定义的顶级域名,比如satoshi/, wallet,域名持有者可以使用域名完成转账。

用户可以在namebase官网交易、使用Handshake域名,交易时使用其原生Token HNS支付费用。一些字符比较受欢迎的Handshake域名在多次交易后迎来大幅度升值。

据namebase官网,pow/、dapp/域名最新成交价跻身历史前十位,pow/收益增幅达8450%。

 公开数据显示,目前Handshake域名注册量已突破700万。

Handshake的特点在于允许用户注册顶级域名,并规定使用HNS代币购买、出售域名,通过管理域名获得收益。

2.费用

域名注册的价格不一,用户需要使用HNS登记域名、购买域名。

3.融资信息

Handshake在2020年完成1020万美元私募轮融资,a16z、红杉资本、SV Angel等参投。

(四).bit

1.简介

bit原名为DAS,是基于Nervos CKB开发的去中心化域名系统,.bit将域名定位为数据存储器。

域名包含数据和所有权,数据包括钱包地址、社交媒体账号、点对点加密通信账号、网络浏览器、去中心化网站等,所有权则主要是私钥。

 bit供用户自由定义字符内容,字符内容不限于字母、数字、特殊符号、emoji、图片等。

bit官网显示,目前域名总注册数为16.3万,用户数为5.4万,生态伙伴数量为107个。

bit即将推出的子账户是其为社区推出的域名服务,子账户让社区成员具有统一规格的域名,更易提升社区成员的归属感,不同的投票权重决定社区成员的域名分配。

2.生态应用

.bit官网显示,目前已有107个项目进入其生态,项目类别包括域名注册平台、数据平台、NFT市场、DeFi应用、钱包等。

用户可在6个NFT市场交易.bit域名:DIDTop、OpenSea、Rarible、LooksRare、X2Y2、Element。

3.融资信息

今年8月,.bit完成1300万美元A轮融资,CMB International、HashKey Capital、QingSong Fund、GSR Ventures、GGV Capital、SNZ等参投。

(五)SPACE ID

1.简介

SPACE ID是BNB Chain链上全链域名服务商,用户可以绑定自己多个链的身份,让用户可以在不同的链上使用同一个域名,简化操作。社区可以通过SPACE ID的网络构建自己的顶级域名服务。

SPACE ID强调TLD(顶级域名)与多链域名服务结合,如果用户Allen将通用域名设置为Allen,他可以将其身份设置为:

  • BAYC:001

  • ETH:艾伦(allen.eth)

  • BNB:德纳利(denali.bnb)

SPACE ID具有可用于解析其他域和名称服务的TLD(顶级域名)。这意味着开发人员只需集成SPACE ID的SDK即可与所有其他主要名称服务集成。

NFTScan数据显示,SPACE ID域名注册数量超27万,最近30天域名NFT交易量排名BNB Chain链上首位。用户可在Element、TofuNFT、NFTrade和Binance NFT交易平台交易SPACE ID域名。

2.生态应用

SPACE ID官网展示了52个SPACE ID集成的应用,应用类型涉及DeFi、NFT、钱包、元宇宙、SocialFi等赛道,应用涉及多条公链。与元宇宙应用的集成让SPACE ID域名可成为用户在元宇宙中的身份名片。

3.费用

Dune数据显示,SPACE ID平均注册成本为0.0505 BNB,最高注册成本为5 BNB。

 

4.融资信息

今年9月2日,SPACE ID宣布完成种子轮融资,本轮融资由Binance Labs领投。

域名价值评判标准

Web3域名是对于Web2域名的改进,可以使用通用的域名评判标准。域名评判标准主要分为这三块:域名后缀、前缀长度和易记性、语言和语音适用度。

域名后缀中,市场使用度较高、基于有影响力的主体的域名价值相对更高。以Web3域名为例,公链中用户量越大的,其链上域名价值越高,比如ETH链上的.eth、BNB Chain链上的.bnb、Solana链上的.sol。

前缀长度和易记性方面,前缀长度在2至7个字符的域名价值最佳,通常超过10个字符的域名价值就会下降。

语言和语音适用度方面,单词或词组的域名价值更高,比如加密当中的dapp、pow、lp等为前缀的域名相比于冗长且无规则的字母排列形成的域名价值更高。

结合以上几个标准,以ENS为例,ENS中价值比较高的有以下几类域名:

1.公司类域名(如nike.eth、starbucks.eth)

2.数字类域名(000.eth成交价为300ETH)

3.名字姓氏类域名(如jack.eth)

4.名词类域名(如dapp.eth、pow.eth)

5.Emoji类域名

ENS成交价排名前两位的域名分别属于前两种情况,paradigm.eth的成交价排名首位,最近的成交价为420ETH。成交价排名第二的是000.eth,最近的成交价为300ETH。

Web3域名发展趋势

Web3域名是DID的基石,在DID赛道热度上升的背景下,Web3域名成为相对低迷的市场中表现亮眼的板块,由于其庞大的用户基数以及Web3身份认证的硬需求,Web3域名体现出较大的增长空间。

此外,Web3域名跨链跨层、自定义域名、与元宇宙和社交应用加快集成等趋势已经突显。

本文将阐述Web3域名发展的四点趋势:

1.Web3域名中多链部署、多类别域名项目增多;

2.与社交图谱、声誉平台等其他DID应用合作加深;

3.使用大于炒作;

4.域名竞争格局与公链竞争格局趋同。

(一)Web3域名中多链部署、多类别后缀域名项目增多

Web3域名的多链部署趋势已在头部域名项目中显现,Unstoppable Domains、.bit、Trust Domains、Nomspace已实现多链部署,SPACE ID作为全链域名服务商,支持用户通过域名访问主流公链上的应用。

随着Web3域名的生态逐渐扩大,Web3域名支持多条链上的应用,用户可以使用统一的账户访问其他公链上的应用。

以.bit为例,.bit目前已集成ETH、Tron、BNB Chain、Polygon,未来计划集成Bitcoin、Flow、Solana、Cosmos等公链,最终成为全链域名服务商。

多链部署对于域名项目而言非常重要,域名项目面向的是用户全链应用交互的需求,如果域名仅限于单链,用户只能通过域名访问一条链上的应用,那么用户如果想访问其他链上应用就需要注册其他域名,而且不同的域名之间信息数据同步又是问题。

最后用户为了访问多条公链上的应用,注册了很多个域名,不管是注册还是管理都非常麻烦。

反之,支持多链的域名项目则解决了这个问题,用户只需要一个域名就可以在各条链的应用间切换,而且信息数据同步在一个域名上,便于用户管理,提升用户体验。

多类别后缀的域名旨在为用户提供更多域名注册选择。

例如Unstoppable Domains提供用户注册的域名后缀有.crypto、.nft、.x等,用户可以根据具体需求选择后缀。

多类别后缀与DNS接轨,在DNS当中不只有.com,在Web3域名中也不只有.eth。

(二)与社交图谱、声誉平台等其他DID应用合作加深

Web3域名在身份认证、链上信息展示、数据聚合等方面与社交图谱、声誉平台有一定的交集。

1.Web3域名项目和社交图谱的交集

社交图谱旨在以不同方式组织和呈现用户的链上画像和行为,解决Web3用户数据所有权的问题。

以Lens Protocol为例,Lens Protocol围绕Profile NFT展开。Profile NFT包含元数据包括用户生成的所有帖子、转发的文章、评论以及其它行为的历史记录。当用户登录某个基于Lens Protocol的应用时,就可以同步Profile NFT内的的所有资料。

Web3域名也包含了用户的元数据,用户通过域名参与链上交互,域名的作用如同钱包地址,域名的交互数据反映在链上。在Web3域名项目推出的去中心化网站上,用户元数据可在个人主页上展示。

社交图谱是Web3良好的集成对象,不仅因为两者有较多重合点,社交图谱还可以作为Web3域名的延伸,将Web3域名存储的数据信息具象化。

最典型的例子是Lens Protocol,Lens Protocol不仅是社交图谱,展示用户的链上行为,通过用户个人页面展示绑定的钱包、社交媒体、创作的内容等信息,用户还可以拥有后缀为.lens的域名,在Lens Protocol生态应用中使用。

2.Web3域名项目和声誉平台的交集

声誉平台(如POAP、Galxe)根据用户的链上行为为符合标准的用户赋予徽章,这些徽章以NFT的形式记入。

Web3域名项目中,ENS已经集成POAP,SPACE ID已经集成Galxe,用户获得的声誉平台徽章可在Web3域名相关个人主页上显示,用户可使用域名访问声誉平台,两者可实现信息数据同步。

Web3域名是用户参与链上声誉平台的身份证明,用户在链上声誉平台获得的徽章、积分等奖励记录在Web3域名当中。就比方说Web3域名是用户的电子名片,每一次在链上声誉平台获得奖励就可以在名片上增加一条履历,丰富用户的去中心化网站内容。

(三)使用大于炒作

从交易量上来看,ENS的交易量、协议收入和市值较高点下滑不少,而域名注册量达262万,用户数超57万,都处在快速增长的阶段。

另一组数据,W3.Hitchhiker在7月统计的ENS成交价分布显示,成交价低于1ETH的占比为91.84%,在0-1ETH的区间内,成交价低于0.01ETH占了多数,这表明ENS整体成交价较低,域名炒作并不明显。

其他头部域名项目NFT的地板价和近期平均交易价格也比较低,情况与ENS相似。

从项目本身来看,Web3域名是DID的基石,具有实用的用例。用户可以使用域名代替钱包地址进行加密货币、NFT等数字资产的交易,可以将域名作为Web3应用的通用账户,可以作为SocialFi项目、元宇宙项目的身份凭证。

因此,从长期来看,Web3域名将成为用户在Web3的身份凭证和统一账户,用户每年向域名服务商支付费用,拥有对域名的所有权、管理权、使用权,真正发挥Web3域名的价值。

(四)域名竞争格局与公链竞争格局趋同

从注册量上来看,Unstoppable Domains和ENS域名注册量均超过200万,分列二、三位,以太坊链上的域名项目在与其他链的竞争中占据绝对领先地位。

域名的注册量、用户量和公链用户数量关联度很高,因此以太坊生态用户庞大的基础在长期来看仍会让Unstoppable Domains和ENS域名注册量保持领先,两者在以太坊链上域名的领先地位目前难以撼动。

公链的市场份额一定程度上决定了域名的价值,Web3域名中的.eth就如同Web2域名中的.com,用户认知度和市场采用度决定了带有.eth后缀的ENS至少在短期内领先于.bnb、.sol等一众以公链代码为后缀的域名的项目。

从中长期来看,域名项目集成更多公链,扩大域名的用户群体,域名多链部署、集成各类型dapp的趋势将缩小SPACE ID、.bit等多链/全链域名与Unstoppable Domains、ENS的差距。

步进式解读 Apache 许可证








无规矩不成方圆, 开源许可协议是开源世界运行的基石。 深入理解开源许可协议权利与义务不但可以帮助我们有效避免开源软件使用合规的问题,同时也可以帮助我们维护自己开源项目的合法权益。 卫sir的这篇《步进式解读 Apache 许可证》结合具体案例为我们全方位解读了Apache许可协议。 这篇文章很值得想深度参与开源项目开发的朋友阅读。





作者 | 卫sir

转载 | 微月人话

编辑 | sunshine 


我们知道,朋友之间或者有一定信任的人之间发生经济往来时(比如借贷或租房之类),虽然也会写借据或合同,但大多比较简单,一页纸就完事了,因为通常不会出事,写多了见外。但如果是机构行为,就会严谨和正式很多,洋洋洒洒好几页,各种通常不会发生的情况都会考虑进去,因为说不准会遇到什么人呢!


MIT许可证就是那种一页纸的协议,一共就三段话,非常宽松,看样子基本上不会去打官司。

Apache许可证也很宽松,但行文上就严谨很多,篇幅也变长很多(大约是MIT的10倍!),设计者在撰写时,显然考虑了种种复杂情况,并随时准备对簿公堂(虽然极少发生)。


不过许可证稍微一长,大家就没有耐心看了。更不要说还是法律语言写成的。



Apache 2.0许可证是ASF(Apache Software Foundation,Apache软件基金会)在2004年发布的,以帮助ASF实现其目标:“通过开源软件开发协作,提供可靠且长久不衰的软件产品”。ASF出品的软件一般都采用Apache 2.0许可证。当然,非ASF的项目也可以使用,Apache许可证设计出来是供所有人使用的。
有人专门做过分析1,Github上使用率最高的许可证,前5名是MIT、Apache 2.0、GPL 2.0、GPL 3.0和bsd-3-clause。本公众号已经在前面专门介绍过MIT。


本文的目的,是从浅入深弄懂Apache许可证,并完全忠于原文。


文章较长,我将以“步进式”方式解读,最精华的放在最前面,以便于你在不能读完的情况下,也能get到精华。


不过,越往后看,会有越多的料。强烈建议读完。


如果对全文翻译不感兴趣,可以迅速拉过第五节。
注:本文不区分“Apache 2.0许可证”、“Apache许可证”、“Apache协议”,视作完全等同。


01

Apache一句话要旨


Apache许可证全文读下来,需要一点功夫。


如果你只想记一句话,那就是“要留我的名,改哪了你得说!”


02

Apache协议精要


从最精简的角度讲,Apache协议想说的是这些:


你可以随便用!不会因版权和专利找你麻烦的!


不能用我的商标!


你分发本作品或衍生作品时,可以不再提供源码!


你在分发时,必须做到:


1、带上本许可证!


2、保留本软件的所有版权、专利等说明!


3、你改过的文件,你得说改了哪!


4、NOTICE文件中的信息得保留!


5、在遵循本许可证的条件下,你可以再许可!


本作品就这样了,我不会负任何责任的!你想负责你可以负,但别拉上我!


03

能稍微详细一点吗


下面是一个人话精简版(对应Apache许可证的第1到9节)。


1、本软件又叫本“作品”,可以是源码,也可以是编译或转换后的其他形式。“衍生作品”是在本作品的基础上修改后的有原创性的工作成果。本作品的“贡献者”包括许可人和其他提交了贡献的人,以下统称“我”。


2.我授予你权利:你可以免费复制、使用、修改、再许可、分发本作品及衍生作品(可以不用公开源码)。


3. 如果本软件涉及我的专利(或潜在专利),我在此授予你专利许可,你可以永久性地免费使用此专利,用于制作、使用、出售、转让本作品。如果你哪天居然告本作品侵权,你的专利许可在你告我那天被收回。


4.你在复制和分发本作品或衍生作品时,要满足以下条件。


* 带一份本许可证;


* 如果你修改了什么,要在改动的文件中有明显的修改声明。


* 如果你以源码形式分发,你必须保留本作品的版权、专利、商标和归属声明。


* 如果本作品带了“NOTICE”文件,你就得带上NOTICE文件中包含的归属声明。即便你的发布是不带源码的,你也得带上此文件,并在作品某处予以展示。


* 你可以对自己的修改添加版权说明。对于你的修改或者整个衍生作品,你可以使用不同的许可,但你对本作品的使用、复制和分发等,必须符合本许可证规定。


5. 你提交贡献就表明你默认遵守本许可的条款和条件。当然,你可以和我签订另外的专门的条款。


6. 你不许使用我的商品名、商标、服务标志或产品名。


7. 本作品是“按原样”(AS IS)提供的,没有任何保证啊,你懂的。


8. 我可不负任何责任。除非我书面同意,或者法律有这样的要求(例如对故意和重大过失行为负责)。


9. 你可以向别人提供保证,你可以向别人收费,但那都是你的事,别给我惹麻烦。


注意以上的“我”,既包含了许可人,也包含了每位贡献者。


上面提到的归属声明,英文是attribution notices,attribution在这里的含义是“归功于”,或者说是一种credit,表明一个作品归功于谁。除了归功于自己之外,归属声明主要强调的是归功自己用到的其他作品(即第三方作品)。


比如chrome浏览器使用了非常多的其他开源作品,在其“关于”中,可以看到:


步进式解读 Apache 许可证


打开“开源软件”后,就能看到长长的credit列表。


04

Asim质疑go-chassis事件


2018年1月,发生了这么一件事,go-micro项目的作者Asim质疑go-chassis项目不合理地使用了其代码2


这两个项目都是使用Apache许可证的。


当时,go-chassis项目在其README中是这么写的:


步进式解读 Apache 许可证


意思是说“本项目受go-micro启发, 但并不是基于它的改善,我们做了更多”。


项目在third-party目录下放了go-micro的5个源代码文件,也带了go-micro的LICENSE文件(内含版权信息),但没有很明显地予以归功(比如在NOTICE文件中)。


1月27日,go-micro的作者Asim,在go-chassis的仓库下发贴(issue#28)提出异议。


标题是“This is not inspired by go-micro”:


步进式解读 Apache 许可证


大意是说,“你这哪里是受启发,你这分明就是基于我代码的改进,我哪哪都能看到我的代码。与其直接拿走我的代码,不如讨论一下你能怎么回馈go-micro”。(有81个吃瓜群众点了赞。)


Asim咄咄逼人的气势搞的go-chassis非常窘迫。


很快,go-chassis项目的主要维护人tianxiaoliang承认了错误:


步进式解读 Apache 许可证


1月31日,go-chassis完成了整改,在LICENSE文件和NOTICE文件中都对go-micro给予了credit,并把所有用到的go-micro的文件都放入了third-party目录下。


步进式解读 Apache 许可证


2月1日,项目在README中也明确做了说明,承认项目是“基于go-micro”(based on)的。


步进式解读 Apache 许可证


此事才算暂告一段落。


感兴趣的去看看这个issue:
https://github.com/go-chassis/go-chassis/issues/28


下面对Apache协议进行全文翻译,如果你没有时间,可以快进到第六节,阅读后续情况。


05

全文翻译!


看到这里,有人会说,上面这些是不是就够用了?


nonono,那当然是不够的,如果真遇到事,还是得看原文,一切以原文为准。


而且是以英文为准!在ASF官网上关于Apache许可证的FAQ里,明确指出,翻译只是便于理解,只有英文版本才有法律效力。


步进式解读 Apache 许可证


英文全文的官方网址在:https://www.apache.org/licenses/LICENSE-2.0.html

本人的翻译和解读如下。排版方式是:


英文,灰底蓝色文字
译文,灰底绿色文字


里面的难句都会有分析,可以顺便学学英语!
注意:本译文无意逐字逐词对照,目的是说清楚,以通达为首要原则。


下面开始:

Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION)
Apache许可证
版本2.0,2004年1月
http://www.apache.org/licenses/
使用、复制和分发的条款与条件
1.Definitions.
”License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document.
”Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License.
1.定义
“许可证”就是有关使用、复制、分发的条款和条件,具体在本文的第1到9节定义。
“许可人”就是使用本许可证进行许可的版权所有人(或版权所有人授权的实体)。


“Licensor”这句的结构是:“ Licensor" shall mean the copyright owner ( or entity ( authorized by the copyright owner ) ) that is granting the License.


”Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity.
“法人实体”是指行为实体以及所有控制它的实体、它控制的实体、或和它处于共同控制之下的实体。
“控制”是指:
(i)通过合同或其他方式,直接或间接地,指导或管理该实体的权力。
或(ii)占流通股百分之五十(50%)及以上的所有权。
或(iii)对该实体拥有受益所有权。


注意第一句比较难,其结构是:LE mean the union of the acting entity and all other entities ( that ( control ) , ( are controlled by ) , or ( are under common control with ) that entity. ) ), 最后这个"that entity"就是前面的acting entity。

分解开来就是,LE mean the union of A and entities that control A, entities that controlled by A, entities that are under common control with A.

举个例子:A是行为实体

A控制了B、C

D、E控制了A

F、G和A都受H控制

那么这个法人实体就是A、B、C、D、E、F、G、H的联合。


然后是对“控制”的定义,从文字上看,control就是power、就是所有权。这是对的,因为 有权的人才能控制 。里面的 beneficial ownership 是“受益所有权”,拥有“受益所有权”的人即最终控制人和最终受益方,也就是我们常说的“实际控制人”。

“法人实体”可简称为“法人”。(注意法人不是人,法人是一个组织。)


”You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License.
“你”(或“你们”),就是那个正被授予权利的人或者法人。
"Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files.
“源码”形式是指便于人类修改的形式,包括但不限于软件源代码、源文档和配置文件。
”Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types.
“目标”形式是指“源码”经过机器转换或翻译后的结果,包括但不限于编译后的目标代码、生成的文档以及转换成的其他媒体类型。

目标代码( object code )是源码经编译后的产物(所谓“目标”),通常是机器代码(或称二进制代码)。这里所说的目标形式,除了目标代码,还包含将其进一步转换而成的可执行文件和库文件。

生成的文档( generated documentation )通常是指从源码中自动产生的文档,如Doxygen之类的工具就可以干这种事。

什么是媒体类型( media type )?像文本、音频、视频、图片等等这些都是媒体形式,可以想象一下这些类型:pdf格式的源码、视频形式的源码,图片格式的源码,甚至是音频形式的源码(有点意思!),不过, 这些类型都不便于人类修改,还是纯文本的源码最好!!


”Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below).
“作品”是指可通过本许可证获取的作者的工作成果,它以源码形式或目标形式存在,作品含有或附有版权提示。(本许可证附录部分有样例)
”Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work  and  for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof.
“衍生作品”是指基于(或源于)某“作品”的原创性工作成果,其所做的编辑修订、注释、深化或其他修改等等,从整体而言,有原创性。就本许可而言,衍生作品不应包括这些作品:可与本衍生作品分离的作品、仅仅通过接口链接(或绑定)起来的作品。

上面这段第一句这样读:” Derivative Works" shall mean any work , ( whether in Source or Object form, ) that is based on ( or derived from ) the Work and ( for which ) the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, ) an original work of authorship.

and for which那个从句,可以看成是:and the editorial revisions…… for the Work, as a whole, is an original work of authorship.


"Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution."

“贡献”包括作品的原始版本以及对该作品或衍生作品的任何修改或增补,这些内容是版权人(或是被版权人授权的个人或法人)有意“提交”给许可人以将其包含在作品中的。“提交”可以通过电子、口头或书面形式,包括但不限于电子邮件列表,源码控制系统、问题跟踪系统等(这些系统通常是许可人用来讨论和改进作品的),但是那些被显著标识了“并非贡献”的内容,不能视为被提交的内容。


注意这里有许可人(Licensor)和版权人(copyright owner )的区别,许可人在上面有定义,就是发布许可的人,版权人不仅包括主作者,也包括提交修改的作者;同样的,贡献不仅包括那些修修补补,也包括主作品本身。

"Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work.
“贡献者”是指许可人以及那些做出贡献的个人或法人。许可人从这些人手中接收贡献并将其纳入到作品中。

这句这样读:” Contributor" shall mean Licensor and any individual or Legal Entity ( on behalf of whom ( a Contribution has been received by Licensor ( and subsequently incorporated within the Work. ) )

比较难懂的是on behalf of whom这块,是谁代表了谁?

是“Contribution”代表了前面的“any individual or Legal Entity”,这个句子的后半部分其实就是:on behalf of an individual or a Legal Entity, a Contribution has been received and incorporated by Licensor .

2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form.
2. 版权许可。在遵守本许可的条款和条件的前提下,每位贡献者特此授予你永久的、全球性的、非排他性的、免费的、免版税的、不可撤销的版权许可,以复制、准备衍生作品、公开展示、公开使用、再许可、分发本作品和其衍生作品(无论是以“源码”还是“目标”形式)。

非排他性 是指不限定只给某人、某团体、某地区等等,而是给所有人都一样的权利。

不可撤销 是指一旦授予,将不能再收回。

关于 再许可(sublicense) 的理解:你是本许可的被许可人(licensee),所谓再许可,就是你分发作品时,可以再次向你的licensee进行许可。至于具体有什么要求,要看许可证第4节第5款。


3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where  such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.
3.专利许可。在遵守本许可的条款和条件的前提下,每位贡献者特此授予你永久性的,全球性的,非排他性的,免费的,免版税的,不可撤销的(本节列出的例外除外)专利许可,用于制作、委托制作、使用、要约出售、出售、进口、转让本作品,你获得的专利许可,仅仅是有权利向你许可的贡献者授予你的,该贡献者的贡献或者其贡献和本作品结合起来后,不可避免地造成了对该贡献者专利的侵权。如果你针对任何实体(包括诉讼中的交叉索赔或反索赔)提起专利诉讼,指称本作品或贡献直接或间接构成侵权,则本许可授予你的任何专利许可在诉讼提起之日终止。

这段比较难理解,也容易被误解34

where引导的这个从句比较复杂: where such license applies only to those patent claims ( licensable by such Contributor ) that are necessarily infringed ( by their Contribution(s) alone or by combination of their Contribution(s) with the Work ( to which such Contribution(s) was submitted. ) )

上面这段文字可以说的再明白一些: 如果作品涉及了某位贡献者的专利 (他可能已经拥有专利了,或者以后会拥有专利5), 那么,贡献者在此授权你可以实施该专利 ,(注意你并不是拥有专利,而是获得了专利的实施权), 使得你可以制作、使用、……销售作品。 (如果不给你专利授权,你是没有权利做这些事的)

如果你提起诉讼说本作品侵犯了什么专利,那么我们立即撤回已经授予你的专利许可 。我总不能让你用了我的专利,然后你又反过来告我吧!(比如你将其修改后,申请了新的专利,然后说我侵权。)

make 是自己制作, have made 是让别人制作

contributory infringement 可以翻译为共同侵权或间接侵权,本文译作间接侵权。比如曾有电影公司状告BT造成间接侵权(共同侵权)。


4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
4.重新分发。你可以复制和分发本作品或衍生作品,可通过任意媒介,可以修改或者保持原样,可以是源码形式或目标形式,但前提是满足以下所有条件。
* You must give any other recipients of the Work or Derivative Works a copy of this License; and
* 你必须给接收者一份本许可证的拷贝;
* You must cause any modified files to carry prominent notices stating that You changed the files; and
* 你必须在任何修改过的文件中,带有明显的声明,表明你已更改文件;
* You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
* 在你分发的衍生作品的源代码中,你必须保留本作品源码中的所有版权、专利、商标和归属声明,但与衍生作品无关的除外;

上面这段要求了在源码中“留名”。注意那个excluding,对于那些在你衍生作品中已经不存在的部分,就不用再留名了。


* If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add You r own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
* 如果本作品在分发时包含了一个“NOTICE”文本文件,则你分发的任何衍生作品都必须要有该NOTICE文件所包含的归属声明(与衍生作品无关的声明除外),该归功应位于以下至少一个位置中:衍生作品分发时所带的NOTICE文件;衍生作品所带的源码或文档;衍生作品生成的展示页面中(如果能正常显示这些第三方声明,不管在什么地方都行)。NOTICE文件的内容仅仅是信息性的,不可以修改其中的许可证。你可以在衍生作品中附加自己的归功,在NOTICE文本里面直接添加或者以附录形式出现,前提是附加的归功不能造成对许可证的更改。


上面这段浓墨重彩地强调了对“留名”的要求,包括对第三方作品的留名。

尤其是,即便不带源码,也要留名。

third-party notices 是指第三方作品的声明,比如你在A的基础上发布衍生作品B,你和用户是第一、二方,你用到的A以及其他作品就是第三方了。后面章节会有实例说明这点。

值得注意的是,很多使用Apache许可证的项目,并没有带NOTICE文件,而是会有类似CREDITS这样的文件,原则上应该把这类文件等同于NOTICE文件对待。(ASF的项目通常都很规范,都会带一个NOTICE文件)

“if and wherever such third-party notices normally appear. ”这句不太好理解,他的意思是,首先你要能展示(if),才有此要求,有的软件根本没有任何地方可以显示信息(比如一个完全没有显示屏的硬件中),那就不做这个要求。如果能展示,那就不限定在哪里(wherever)展示。


* You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
* 在你自己的修改中,你可以添加你的版权声明,并可提供附加的或不同的许可条款和条件,以供他人使用,复制或分发你的修改或整个衍生作品,前提是你对本作品的使用、复制和分发等符合本许可规定的条件。

这段主要说的是“再许可”(sublicense) ,一个作品A被人拿来做了修改产生了作品B,他在分发B时,可以加上其他许可条款, 也可以使用完全不同的许可条款 ,但他在使用A、修改A、生成B、分发B时,都必须遵循本许可证。

其中的 otherwise 在这里并非“否则”的意思,而是“其他”、“等等”的意思,指的是A、B、C and otherwise。


5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
5.提交贡献。除非你另有明确说明,否则你有意提交给许可人的任何贡献(用于包含在作品中)都默认遵守本许可的条款和条件,并且再没有任何其他的条款或条件了。尽管是上面这么说,本文中的任何内容都不能取代或修改你和许可人之间(可能)另外签订的有关此贡献的其他任何条款。
6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
6.商标。本许可不授权使用许可人的商品名、商标、服务标志或产品名,除非在描述本作品来源时和复制NOTICE文件时,有必要合理地、符合常规地引用。
7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
7.没有保证。除非适用法律要求或以书面形式同意,否则许可人是“按原样”提供本作品的(每个贡献者也如是提供其贡献),没有任何类型保证或条件(无论明示或暗示的),包括但不限于任何权利担保、非侵权保证,适销性保证、适用性保证或条件。你自行负责确定使用或重新分发本作品的适当性,并承担和你行使权利(本许可授予你的)有关的任何风险。

WARRANTY OF TITLE 即“权利担保”,是指卖方应保证其出售的货物享有合法的权利,没有侵犯任何第三人的权利,并且没有任何第三人就该货物向买方主张任何权利。


8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
8.责任范围。不论是任何情况或任何法理依据,任何贡献者均不会对你的损失承担责任,无论其产生于侵权(包括过失)、合同还是其他情形,除非适用法律要求(例如故意和重大过失行为)或书面同意。这些损失包括由于本许可产生的、或由于使用或不能使用本作品而引起的、任何直接的、间接的、特殊的、偶然的、或伴随结果而产生的任何性质的损失(包括但不限于因商誉受损、停工、计算机故障或失效、以及任何其他商业性损坏而带来的损失),即使贡献者已经被告知此类损失的可能性。
9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However , in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
9.承担保证或其他责任。在重新分发本作品或其衍生作品时,你可以提供支持、保证、担保以及其他责任、义务及权利,并因此收费,但必须满足以下前提:符合本许可证的条款条件;在承担这些责任时,你只能代表你自己(也只能单独承担责任),不能代表任何其他贡献者;如果因你承担这些保证和责任导致任何贡献者产生任何损失或被追责,你同意担保、保护每位贡献者不受损失和免于责任。
END OF TERMS AND CONDITIONS
条款和条件结束

第9节However后面那句比较长,看起来容易犯晕。其结构是这样的:in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility , ( not on behalf of any other Contributor, and ) only if You agree to indemnify ( , defend, and hold each Contributor harmless ) for any liability ( incurred by ( , or claims asserted against, ) such Contributor ) by reason of your accepting any such warranty or additional liability.

indemnify 主要指“担保不受到损失或损害,即便受到损失也同意予以补偿”,hold harmless是指“自己承担责任而免去对方的责任”。


APPENDIX: HOW TO APPLY THE APACHE LICENSE TO YOUR WORK
附录:如何在你的作品中使用APACHE许可证
You should include a copy of the Apache License, typically in a file called LICENSE, in your work, and consider also including a NOTICE file.
你应该在作品有一个LICENSE文件,里面是Apache许可证的拷贝,你还应考虑放一个NOTICE文件。
To apply the Apache License to specific files in your work, attach the following boilerplate declaration, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives.
将Apache许可证应用于你作品中某一特定文件时,请附加以下样板声明,“ [ ]”括起来的字段应替换为你自己的标识信息。(不要包括方括号!),这段文本应该位于该文件的注释当中。我们还建议将文件名或类别名以及用途说明,和版权声明放在同一“打印页面”中,以便更容易地将第三方文档区分开来。


Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
上面这段不翻译了,原样放上去就是了。


06

go-chassis事件后续


还记得上面说的go-chassis事件吗。


我以前对此并不了解,研究Apache许可证之后才发现还有过这事。


我当然要去求证一下。


于是便去github仓库上看,令我非常惊讶的是,在其third-party目录下,已经没有了go-micro。


仔细翻了翻history,才发现,2018年3月28日, third_party/forked/go-micro目录被移除干净。


同日,PR#151以标题“adjust license&notice”出现,提议在LICENSE、NOTICE和README中,删掉go-micro。该PR得到了项目维护人tianxiaoliang的approve。


asim在issue#28里再次表达了他的不满:


步进式解读 Apache 许可证


并在PR#151的对话中写道:


步进式解读 Apache 许可证


大意是说,“你的作品是基于go-micro的,即便你修改和清除了go-micro的代码,你也是基于我而来的,你不能删掉我的版权和许可。我仍然可以指出你的哪部分代码像我的。


不过这次抗议并没有得到回应。


2018年9月17日,README中删除了“本项目基于go-micro”这句。


2019年10月22日,NOTICE中的归功被删掉,licenses/LICENSE-go-micro文件被删掉。


至此,go-chassis和go-micro不再有关系了。


asim也没有再说什么。


我又去看看了go-micro,发现asim虽然维权意识很强,但在版权声明上做的还不够,go-micro项目没有NOTICE文件(这个还好,这不是必须的,尤其是没有第三方可以归功的时候);在所有的源文件中,都没有版权和许可信息,只是在LICENSE文件中Apache许可证的附录部分,声明了一下版权(这种做法也不常见,通常是不动Apache许可证整个内容的):


步进式解读 Apache 许可证


另外一点让我感觉意外的是,go-chassis虽然说已经和go-micro无关了,但删的并不干净,在其代码中还是能找到go-micro的字样!

下面是在go-chassis中搜索go-micro的结果(2020年5月10日):


步进式解读 Apache 许可证


我只能认为,这可能是个疏忽。


07

我该怎么归功


从Apache许可证和一些纠纷看,大家是很重视“留名”的。


毕竟,做开源的人,如果连“名”都图不上,那可就差点意思了。


如何留下作者和贡献者的名?


常见的做法是源代码里面留名。源码的首部应该放上版权信息和许可信息。但我在github上翻了翻,发现很多项目并没有做到这点,有的完全没有版权和许可信息,有的则是只写许可不写版权。


究其原因,估计作者一是太懒,二是没有这个意识。


做得比较好的项目,不仅在源码中有声明,还会专门在根目录下放上诸如AUTHORS、CONTRIBUTORS、OWNERS、CREDITS这类文件,对作者和贡献者予以明确的归功。(这些不是必须的,但是推荐的。)


关于版权那行,有一种写法是很讲究的6,值得欣赏和学习:


Copyright <year> <primary authors> and contributors


比如下面这个例子:


步进式解读 Apache 许可证


这并不是必须的,因为即便不这么写,贡献者也是自动拥有其版权的。只不过这样写,显得格外尊重贡献者。


如何留下作品的名?


如果你使用(或依赖)了第三方作品,要在NOTICE和LICENSE中说明。


NOTICE文件是专门干这事的。

对于ASF的项目,一般都会有NOTICE文件,但非ASF项目,用的就不太多,即便是使用Apache许可证的。


下面是Kafka项目的NOTICE文件,属于比较标准的ASF项目写法。除了致敬所用到的ASF作品外,Kafka特意对jersey做了归功(以下为NOTICE全文)。


步进式解读 Apache 许可证


在下面这个非ASF项目Hangfire7中,其NOTICE文件也很规范,文字表述非常详尽,值得学习(以下为文件首部)。


步进式解读 Apache 许可证


关于LICENSE文件,除了放本项目的许可证,还应放上所用其他项目的许可证。下面以Apache Kylin项目为例看一下,Kylin使用了一些其他作品(它称为子部件,subcomponent),这些作品使用的许可证在LICENSE文件中作了说明:


步进式解读 Apache 许可证


注意上面的截图,是从207行开始的,上面的200多行,就是Apache许可证全文,然后是他所用到子部件的许可证。


如果用到的作品比较多,也可以专门建一个licenses目录做这件事,go-chassis就是这样做的。


为了很好地对贡献者和第三方作品致敬,有的项目还会在网站上予以展示:


比如selenium项目8就密密麻麻地列出了贡献者的名字和头像,看上去颇为壮观。

以下仅仅为部分节选,有兴趣的话可以去其网站观摩一下。



总之,尽可能尊重贡献者和你用到的作品,充分地给予他们荣誉。这是开源人应有的礼仪。


07

关于“再许可”的迷思


为了更好理解Apache许可证,现在看一个我虚构出来的测试案例。


Alice有一个作品A,用Apache许可证发布,里面只有一个foo.c,文件的内容可概括为:


版权 年份 Alice
Apache许可信息
源码


作品还带了一个LICENSE和NOTICE。LICENSE里面就是Apache许可证全文。NOTICE里声明了Alice对A的版权所有(也即对自己归功)。


现在Bob复制了作品A,把foo.c略微修改了一下,改为:


版权 年份 Alice
“各位注意:我修改了许可信息,从Apache改为了MIT”
MIT许可信息
源码(未做实质性改动)


Bob原样保留NOTICE,在LICENSE中放了两个许可证:MIT许可证、Apache许可证。


Bob将这个作品命名为B,然后开始分发B。


这样,Bob从实质上把A从Apache许可证转成了MIT许可证。这意味着用B的人无需遵守Apache协议了,我们知道,MIT协议比Apache更宽松,现在,用B的人连修改哪了都不用说了。 


Alice发现这个情况,说,“你这算什么啊,还有你这种骚操作?”


Bob说,“我怎么了,我违反哪一条了?”

从行为上看,B保留了A的版权信息,保留了许可证信息,声明了修改,保留了归属信息。这一切都遵循了Apach许可证的条款和条件。


Alice翻遍许可证,犀利地指出:


“根据第4节第5条,你只能对你修改的部分修改许可。”


Bob说:“那条还说了,我可以对整个衍生作品修改许可!”


Alice又翻了翻许可证,再次犀利地指出:


“根据第1节对衍生作品的定义,你这不是衍生作品!因为你没有原创性!”


Bob:“……”


Bob翻了翻许可证,说:“好吧,我这不是衍生作品,但我确实有权利修改这个文件,而且我对我修改的部分做了声明,我还保留了你的版权和归属,我的所有操作都没有违反Apache许可证要求。”


Alice:“……”


你怎么看呢。


也许ASF是允许这种情况的,具体要看ASF如何解释Apache许可证了。
为了遏制这种情况,A应该将自己的版权、仓库地址、License都放在NOTICE文件中。
这样,即便一个人拿到B,他也会知道B其实就是A,A的原License是什么,源代码在哪里。这个人可能会更倾向于直接使用A,毕竟A更正宗。


-END-


本文版权属于卫sir,采用CC-BY许可。(转载请保留此行)
欢迎关注公众号“微月人话”(man-mind)阅读作者开源相关文章,回复“MIT”阅读MIT协议解读,回复“开源”阅读“开源的7大理念”。(转载请保留此行)


向上滑动阅览


  1. https://www.kaggle.com/mrisdal/safely-analyzing-github-projects-popular-licenses 

  2. Jeffrey Robert Kaufman: https://opensource.com/article/18/2/how-make-sense-apache-2-patent-license 

  3. 薛亮:如何理解Apache 2.0许可证中的专利许可条款?https://linux.cn/article-9402-1.html

  4. http://www.apache.org/foundation/license-faq.html#PatentScope 

  5. https://opensource.stackexchange.com/questions/5508/what-does-and-contributors-in-the-copyright-byline-imply 

  6. https://www.hangfire.io/licensing/third-party.html 

  7. https://www.selenium.dev/documentation/en/front_matter/copyright_and_attributions/ 









点击下方“阅读原文”查看更多


以上是关于全方位解读Web3域名:DID基石NFT新增长点的主要内容,如果未能解决你的问题,请参考以下文章

灯光秀如何打造夜间经济新增长点

Web3 系列开发教程——创建你的第一个 NFTNFTs 可以给你带来什么

星际文件系统和Hedera Hashgraph宣布共同努力推动Web3互操作性

步进式解读 Apache 许可证

Web3底层逻辑中的制度经济学

Web3 系列开发教程——创建你的第一个 NFT如何开发一个成功的 NFT 项目 | NFT 社区建设技巧