作者:Jason
这是我第一篇宏观分析类型的文章,之前的文章都是分析某一个具体的项目,这次想试着讲讲更宏大也是我更不擅长的领域,同时也把之前零散发在Twitter上的内容结构化整理成一篇文章。
Web3一直是一个概念新词满天飞的领域,所以我斗胆用一篇文章尝试为大家讲讲我所理解的Layer0、1、2,也许你会疑惑为什么标题不叫《一文讲清楚Layer0、1、2》呢?一方面是因为我没有自信和实力可以讲清楚,另一方面是其中很多定义到目前很模糊,并没有行业标准,比如在我的视角里Celestia属于Layer0,但是也有很多说法它属于Layer1,所以本文均为站到个人视角的理解,可能存在不全面或者与你的观点不一致的情况,欢迎探讨。
文章速览:
Layer0:跨链通信?
Layer0:模块化区块链
Layer1底层区块链
Layer2主流解决方案:rollups
Layer0:跨链通信?
Layer0是我认为目前行业对其定义最模糊也是理解最复杂的一层,所以我会多花一些时间讲解。
很多人将Layer0定义为区块链基础设施服务层,但我觉得这个概念还是太大太粗,目前我认为Layer0的关键词就是发链、多链与跨链,核心内容落在了跨链通信与模块化区块链,所以讲清楚了跨链通信和模块化区块链,Layer0的内容也就基本覆盖了。
先说说跨链通信,要注意跨链通信和跨链不一样,跨链通信是一个技术实现,跨链则是一个业务场景。
跨链是区块链极其重要的能力,假设每条链都是一个银行,如果区块链无法跨链则等于无法实现银行转账。?我们常说的跨链是指资产跨链,即我想把A链的aToken跨到B链,首先Token的项目方需要在两条链上都发行自己的原生Token,然后使用跨链桥来进行两边Token的“转移”,转移打引号的原因是转移的过程并不是我们所理解的从A移动到B,其工作原理是将A链的aToken锁定,然后再在B链铸造对应数量的bToken,至于A链锁定资产,到B链铸造资产这个中间的过程则会产生很多问题,主要就是通信的问题,A链如何通知B链“张三刚才在我这里锁定了20个aToken,你现在赶紧的给他弄20个bToken出来”呢?
链本身是封闭的情况下只能通过链下的监控来连接两条链的资产变化情况,比如我写个脚本之类的。但这不够native,也不够安全,所以跨链桥经常出问题,跨链通信则是主要解决多链之间原生信息传输的问题。
专注于做跨链通信的LayerZero协议我之前也写过一篇与它相关的文章《那个可以跨链的Gh0stlyGh0sts会成为下一个Azuki吗?》,这也是第一个使用LayerZero实现原生跨链通信从而达到NFT资产跨链效果的项目。
观点:比特币在未来很长一段时间内都将成为价值存储领域的重要参与者:11月16日消息,怀俄明州共和党参议员当选人、比特币倡导者Cynthia Lummis在接受《早安美国》采访时表示,比特币在未来很长一段时间内都将成为价值存储领域的重要参与者。Lummis于2013年首次购买比特币。(decrypt)[2020/11/16 20:55:50]
刚才说到传统的跨链桥是通过链下监控两条链的方式来实现了伪通信,而并不是真正的两条链产生了信息传递,如下图中左边和中间的模式,LayerZero则是直接在两条链里面部署了自己的节点,这些节点完成了多链之间的通信。
如下图所示,我可以直接在合约代码里写清楚我要给哪条链传输什么信息过去,这是区块链原生的跨链通信。
我非常看好LayerZero这个协议,它也完成了红杉领投的1.35亿美金融资。原因是我觉得这是真正纯原生的跨链解决方案,并且资产跨链只是它的一个应用业务场景,链和链之间的通信不仅限于资产,就像是银行之间的通信也不仅限于转账,我在工行产生了坏账信誉不好,则工行可以将该消息告诉建行,我在建行贷款就会出现问题,跨链通信背后的业务场景一定会可以挖出很多。
讲完了LayerZero后Layer0主要的内容跨链通信就明白了,这里要注意的是Layer0是概念,LayerZero则是这个概念里的具体某个协议,这两个不要搞混了。
Layer0:模块化区块链
Layer0还有一个重要的内容模块化区块链,跨链通信这个词大家能够理解确实还挺底层的,属于Layer0,但模块化区块链这个词大家乍一听会觉得非常“大”,不像是一个Layer即层的概念,而是一个“全套”,就是区块链是一个汉堡的话,Layer就是里面的生菜、肉饼和面包片,但是模块化听起来就像是一个全套大汉堡而不是某一片生菜。
如果从广义的概念来说模块化区块链是一种“架构”,layer2也是模块化区块链,将计算层模块化抽象出来,但是从目前狭义的对于模块化区块链的定位来说,我们要明白将区块链模块化以后的目的是什么,从而再定义其处在哪一层,我认为最直接的目的是在于如何能够更简单快速的去发一条链出来,模块化的效果是能够把区块链技术架构拆的更清晰,封装的更完整,然后开箱即用就像是搭积木一样,可以直接使用模块化区块链的能力用更低的成本发一套新链出来。你可以粗糙的理解成模块化区块链的目的是发一条Layer1出来,这样是不是就理解为什么它处在Layer0了。
现场 | 观点:USDT有多种版本 它就是一个中心化的桥:金色财经现场报道,由Web3基金会主办的Web3大会10月30日在上海举行。在“区块链跨链和桥”圆桌环节,达尔文网络联合创始人钱晓栋表示,桥早就存在,也有不同形式的桥,比如USDT有多种版本,它就是一个中心化的桥,而去中心化桥是一个很重要的方向。
ThoughtWorks区块链事业部研发经理曾超伟表示,桥是跨链的一种,桥对跨链协议来说是一个转接器,下一个趋势是跨联盟链。ChainX首席营销官Kristen Shen表示,之所以要做桥是因为链外世界很精彩,把链外资产引进来才有助于波卡发展,ChainX做比特币桥,把BTC引入波卡,未来可以通过比特币桥扩展到所有的链,成为一个跨链平台协议。ABMatrix COO & 合伙人杨超表示,当年TCP/IP协议是有互联网应用带动的,跨链协议也需要区块链应用的爆发来带动。[2020/10/30 11:14:55]
模块化区块链的两个代表Cosmos和Celestia为大家进行展开介绍从而更清晰的理解其含义,其中?Cosmos要感谢/img/20230515170535792362/3.jpg "/>
模块化区块链的对立面是目前大多数Layer1都属于单体区块链,也就是一条链承担了共识、数据可用性和执行的工作。
共识:整个网路中节点决定打包哪些交易,以什么顺序打包;
数据可用性:就是验证某个区块是已经完成广播是写入链上的;
执行:具体交易和状态的变更。
如果一条链把这三件事都干了,那它就是单体区块链,也就是目前L1面临的问题,交易、结算、出块都排着队完成。所以设计思路就是把共识、数据可用性和执行这几个区块链核心工作职责给拆开,每个职责单独做一条链即一层,然后各司其职干好自己的事,再将其拼装组合到一起。
说到这里大家应该就意识到了,这就是30年软件开发都遵循的模块化设计原则,封装多态耦合内聚那套理念,把一个复杂系统拆分职能,各干各的,再组装到一起,所以至少这条顶层设计理念是一直存在的,将这套设计理念应用在了区块链设计上,并不是什么很新颖的理念。
观点:比特币仍比2019年高点低40%,而黄金处于牛市中:黄金支持者、比特币反对人士Peter Schiff发推文称,虽然黄金价格没有创下历史新高,但它正处于牛市之中。自2015年12月触底以来,这一数字一直在上升,本周创下9年以来新高。但比特币目前处于熊市。它在2018年12月触底,但随后的反弹在2019年6月见顶,目前仍比2019年高点低40%。[2020/7/11]
然后当说到将共识、数据可用性、执行拆分出来成为一条链,大家应该意识到这就是L2在做的事,rollup扩容思路就是将执行层单独拿出来做一条子链去完成以太坊的交易处理工作,然后将结果再返回至以太坊主链,所以rollup其实就是模块化设计理念,所以如上文所说广义的模块化区块链不是一个具体的东西,它是一种概念或者是设计理念,但狭义的模块化区块链则是指将区块链的共识、数据可用性的底层能力封装起来,这两层也是对于一条区块链的地基,复杂度和难度也是最高的,然后这两层能力具备了新发一条链就门槛和成本很低,只需要将精力关注于自己的业务与计算。
那么Celestia主要是将数据可用性能力模块化,通过共识机制存储交易记录并提供数据可用性,而不用参与结算和执行层的事,只管存,并保证存的东西是有效的,其他开发者就能以rollup的形式在Celestia上构建出自己的结算层和执行层。所以Celestia就像是区块链领域的AWS,传统一家公司开发软件需要买一台服务器放在机房,10家公司就要10台服务器,于是AWS说你们都别买了,我自己整一个大的,你们只管软件开发,需要存取数据就来我这,我能够保证你们的数据有效的。
那么为什么Celestia要做数据可用性层模块化呢?如果我想发一条链最难的就是这么让尽可能多的节点参与到我的链中去为我完成共识和数据可用性的过程,有这么多节点来维护我的链,那才能在链上做更多应用层执行的事情。
所以需要先看一下L1链的数据可用性是如何完成的。我们都知道区块链是由大量可自由加入的节点组成的,节点越多也就越安全,越去中心化。节点分为全节点和轻节点,全节点就是要完整的维护一套数据账本,所以少量节点恶意攻击不会影响全局节点,这也是区块链的立根之本。
但是随着时间数据也越来越多,维护一个全节点成本过高,如果大家都不愿意来做全节点,那区块链就趋于中心化变得不安全,所以会有轻节点的存在,不会维护验证全量交易数据,而只存区块头,当出现需要验证数据可用性的时候,就将其发送给相邻全节点帮忙验证,然后再将结果返回回来。
所以总结一下,搞一个链最难的是这么能搞到这么多的节点来维护我这条链的共识和数据可用性。这也就是Celestia想解决的问题,它在官网说希望能够让创建一条链像创建智能合约一样简单,大家不用管下面的数据问题,交给Celestia完成,只需要专注于自己上层执行结算,实现“一键发链”的效果。
看完Celestia我们再看一下Cosmos,其实这两家组织的成员重合度很高,很多人都是同时贡献于这两家组织的。
观点:加拿大将执行新反法规,前期做好准备的加密公司或受益匪浅:此前报道,加拿大金融交易与报告分析中心(FINTRAC)3月初发布的一份部门报告称,6月1日FATF新规生效后,该中心将开始更加严格地监管虚拟货币公司、交易和活动。对此,加拿大加密货币交易所Bitbuy财务与合规主管Dean Skurka表示,“对虚拟货币交易商的最大影响之一将是其内部报告和外部报告要求。过去几年一直在为这一制度做准备的公司将受益匪浅,因为其系统将在2020年6月1日截止日期前建立。那些没有这样做的人将不得不大幅增加投入,因为这是一项很大的努力,不应该掉以轻心。”Skurka表示,最终该法令将通过减轻与加密相关的一些风险来改善消费者的环境。尽管如此,Skurka在称赞引入监管透明度的同时,推断加密公司可能会面临与传统MSB相同的银行业挑战。执行转移规则(travel rule)不仅仅是技术难题,对于那些有隐私意识的人来说是主要痛点。不过,据Skurka称,只要转移规则得到正确应用,并以保护用户隐私的方式,它可能会迎来一个透明的新时代,因为“它将解决许多与现金、SWIFT电汇和执法部门无法追踪犯罪分子有关的问题”。(Cointelegraph)[2020/3/30]
Cosmos的目标是成为区块链的互联网,首先它提供了一套“发链”能力,让每个社区都可以拥有一条自己的主权链,主权链即独立的区块链,数据的产生和写入都是内部闭环的,其次链之间可以进行数据通信交互,实现万链互联,这个愿景还是非常有感召力的。
至于为什么它认为有让社区发自己链的需求呢,是因为它将区块链分为公共链和专有链,在以太坊这样的公共链上开发者需要面对的两层治理,链和应用,并且应用要遵循受限于底层链,从而很难释放出应用的价值,所以它想针对于每个应用都可以产生一个量身定制的链。
所以为了达到这个目的首先要解决发一条新链门槛与成本的问题,其次解决这么多链之间如何通信形成一个滚雪球生态的问题。
门槛和成本Cosmos的解决思路与Celestia一致,即将底层的能力封装起来,区块链架构分为三个大层:网络、共识和应用,它将网络和共识层封装起来,也包括了账号、交易、签名等原子能力,提供了SDK使得开发人员基于此进行主权链的开发,通过预置好的模块来进行自定义构建区块链,然后发布到Cosmos网络中和其他的兄弟链进行交互,交互则是使用跨链通信协议IBC来实现了一个hub集线器的效果,其他的链都通过IBC连接到这个集线器中,在此进行数据中继。
动态 | 观点:加密托管机构能对资产的市场价格产生重大影响:CoinDesk研究主管Noelle Acheson认为,在传统金融领域,一个好的托管服务机构可靠地“持有”客户名下的证券和债券,通常会提供额外的服务,但从不会影响资产的价值。加密货币市场则不同。好的加密托管服务可以对资产的市场价格产生重大影响,甚至会影响其基本价值。这种差异比最初看起来的更重要。在传统金融中,托管人是解决难题的关键部分,但他们不是市场影响者。在加密领域,他们(个人或集体)的策略可以决定资产的成功。然而,这种影响不受监控和监管,最终可能会催生一种全新的权力结构。(CoinDesk)[2020/1/21]
所以Layer0的概念至此总结一下,其工作主要集中在发链、多链和跨链这三层,让发链变得更简单,但发了这么多链互相不通那也无法形成合力,于是需要解决跨链的问题。
Layer1底层区块链
Layer1是底层区块链,熟知的比特币、以太坊、币安链都属于Layer1,以及Avalanche、Near和Terra等,因为它们都是自己生态系统中的主要网络,在自身区块链上处理并完成交易,同时也具备自己的原生Token,最近新起的两大新公链Aptos和Sui也是Layer1,但是注意很多人容易把Layer1和公链混为一谈,公链包含Layer1但不是等于的关系。
Layer1公链是crypto世界中护城河最深的一个物种,当越来越多的节点、开发者、项目加入其生态后,滚雪球的优势将会非常明显,除非是出现了Luna之于Terra这样的基础代币直接崩盘,导致这个大雪球发生了大雪崩,否则生态内大量错综复杂的利益关系会互相牢牢绑定到一起,使得链的根会攀枝错节的扎的非常深,所以打造出来一条成功的Layer1公链一直是整个crypto圈子里无数组织前赴后继的。
目前应用领域最大的Layer1公链是以太坊,所以竞对链都会想办法从以太坊生态中争夺开发者与用户,因为以太坊这个贵族链在高峰期动辄数十美金的GAS费对于我这种普通小韭菜来说还是肉疼的不行,所以目前绝大多数的竞对链都主打低gas、高TPS的策略来争抢用户资源,比如这个星期刚完成空投大热的Aptos,这里简单提一嘴,当时Aptos上主网后很多营销号带节奏说Aptos号称10KTPS实际上只有4TPS,然后一通冷嘲热讽让别人觉得注水了,10KTPS是理论最高可以承载的量,4TPS是当时实际正在跑的量,就像是港珠澳大桥理论上号称单日25万通关量,实际上每天跑的车寥寥几辆,但是能说港珠澳大桥性能注水了吗?
打造公链就像是打造一座城市,一座城市的繁荣需要的是先修建好住房、医院、商场、铁路等基础设施,打造宜居的环境,居民才会搬过来生活,如果一条链没有应用把用户抢过来也没用呀,Aptos性能上再强理论TPS再高,没有足量的应用去验证也是一座没有车跑的港珠澳大桥状态,所以公链吸引开发者的手段可以分为几种:
公链给足开发者扶持,来我这里开发应用给钱给流量,所以这也就是为什么大量的公链背后都是交易所站台,得出得起钱呀,然后整天搞黑客松,发grants来招商引资。
新公链对于开发者来说最大的吸引力在于足够空白,因为成熟的以太坊竞争已经太激烈太卷了,去了新的公链甚至可以直接把以太坊上已经验证成功的应用直接照搬上去,比如最近大家应该看到sui上的NFT交易平台、域名服务商这些已经在以太坊滚瓜烂熟的东西依然拿到了大额融资,群里我看很多人戏称换个语言任何项目都能重新做一遍。
还有一个我认为行之有效的手段就是直接EVM以太坊虚拟机兼容,对于开发者来说最大的成本不是写代码,而是学代码,一种完全陌生的技术栈从零开始学起,然后实操开发,调试debug等等一套下来会劝退很多开发者,那有没有什么办法能够让以太坊生态的开发者可以顺滑的低成本迁移到新链上去呢?有没有办法我可以用Mac电脑开发并调试运营Windows的应用呢?安装一个虚拟机,大家应该身边也存在这样的朋友买个Mac用的不顺手,给它改成Windows系统,或者其实就是运行了一个虚拟机,虚拟机就是用软件模拟计算机系统。EVM就是服务于以太坊的智能合约,所以如果使用EVM兼容对于开发者就可以直接顺滑的将以太坊的应用迁移到兼容链上去,大家熟知的BSC就是EVM兼容链。
Layer2主流解决方案:rollups
再来聊聊Layer2,刚才说很多Layer1的竞争链瞄准以太坊“贵”和“慢”来打,但是对于以太坊本身有什么办法能够优化呢?Layer2是一种方式。
在讲Layer0部分的时候我聊到了单体链,一条链上将所有事都干了,这能不堵吗?这时有人想到了能不能把以太坊上的交易拿出来在外面执行,然后将结果返回给以太坊做数据可用性处理,这种操作方式被称为rollups,也是Layer2主流解决方案,就像是原本一条路上非常堵,我给它修个高架桥,当然我还看到一种有趣的解释,做核酸10人混管就是rollups。
所以通过将交易放在链下处理,不需要经过以太坊缓慢的共识过程,从而来减少以太坊主网上的计算量,提高整体处理速度和吞吐量。
我之前读书时恰好研究方向也是区块链扩容,当时写的论文中提出的方案也和rollups异曲同工如下图所示。
刚才说到rollups就是将计算在链下执行再将结果放到链上的过程,这个过程最大的问题就是在于怎么证明这个结果是有效的,两种证明方式也就产生了两种主流的rollups方案:Optimisticrollups和zkrollups。
人如其名,Optimistic的英文含义是乐观的,即Optimisticrollups使用了欺诈证明作为数据有效性的验证方式,在将链下计算完的结果同步给以太坊主网后,会乐观的默认数据是正确的,如果有人认为数据不正确也就是存在欺诈,就可以在窗口期又称质询期内通过计算欺诈证明来质疑汇总交易的结果。
如果证明成功存在欺诈,则会重新执行交易更新数据状态,并且当时将该交易打包的排序节点就会受到惩罚,削减它提交的保证金,并分发给提交了欺诈证明的验证节点。
在这个过程中重要的角色除了两个节点:排序节点和验证节点外,还有另外两个重要的角色参与:CTC交易合约和SCC状态合约。
这里逻辑稍微有些复杂需要大家耐心理解,所有Optimism的交易数据区块都存储在以太坊一个特殊的被称为CanonicalTransactionChain的合约,简称CTC,合约地址为:
0x5E4e65926BA27467555EB562121fac00D24E9dD2
可以看到排序节点Sequencer每分钟大约写入两批次,每个批次可能包含几百笔交易数据,CTC合约主要存着的是交易数据摘要。
另外将交易后的状态根StateRoot存入StateCommitmentChain合约,简称SCC,合约地址为:?
0xBe5dAb4A2e9cd0F27300dB4aB94BeE3A233AEB19
约每6分钟写入一批次,验证节点可以去读取这两个合约中的记录进行验证计算是否交易存在欺诈行为。
以上就是Optimistic证明数据有效性的方式,有点博弈论的感觉,通过双方对抗加激励模型实现最小程度作恶欺诈的效果,我们再看看ZK是如何解决的。
zkSync是zkrollups的主要玩家,它的官网slogen是relyonmath,notvalidators,依赖数学,而不是验证者,这句话就是针对于Optimistic欺诈证明说的,可见对于Optimistic火药味满满啊。
zkrollups中每一笔交易的有效性都是在交易发生前验证的。排序节点无法作恶。但是Optimistic?Rollup中,排序节点的行为不受约束,因此必须存在验证节点去监视欺诈交易,一旦发现就需要向主网提交欺诈证明。
zkrollups相比于Optimisticrollups最大的好处在于因为使用零知识证明的纯数学计算来进行交易有效性验证,所以将资金转移至以太坊不会存在延迟,因为一旦zkrollup合约完成了有效性证明,就会执行交易。相反从Optimisticrollups中提取资金会有所延迟,因为要为欺诈证明留出一定时间。
zkrollups的核心架构:
链上合约:逻辑与Optimistic一样,在以太坊部署对应的智能合约用于存储区块汇总数据、验证合约等,但是不需要像Optimistic一样去发布太多交易数据在以太坊链上合约,因为其有效性在上链之前就已经得到了证明,而不是Optimistic需要将数据发到链上用于他人验证,但zkrollups也可以将交易数据存放在智能合约的calldata中,它是一种不可更改,但是不持久的临时存储区域,类似于内存,所以有需要也可以获取到交易数据。
链下虚拟机:虽然zkrollups依附于以太坊,但交易执行过程存在于独立的EVM虚拟机,即实际zkrollups执行的环境。
其在大流程上和Optimistic类似,用户签署交易后,提交给zkrollups的Layer2排序节点进行处理并打包在一个批次中,然后提交给以太坊。
zkSync使用的零知识证明太复杂了涉及到大量的加密数学,看的头大实在没理解透认怂了,所以这里就不班门弄斧复杂粘贴一些开发手册里我自己都看不懂的数学公式假装我看懂了。
以上就是我个人对于Layer0、1、2的研究与理解,还是一开始说到的Layer层的概念目前没有明确的统一界定,所以这篇文章均为我个人的理解分析,不代表官方立场,也肯定会存在一定程度的主观、偏差和不足,欢迎交流探讨,共同学习。
原文标题:《80亿亏空带走FTX,钱包安全方案才能守护住Web3底线》 原文来源:R3PO 加密货币交易平台FTX?掀起币圈雷曼风暴,比特币、以太坊等应声大跌,加密货币圈受到重创,引发了市场恐慌,熊市必将延期.
1900/1/1 0:00:00YugaLabs从单独的NFTPFP项目走向NFT矩阵,再基于NFT拓展IP宇宙,引入DAO治理,是Web3IP和元宇宙商业探索的先驱者,也成就了用创意和社区从零到一打造头部加密社区的传奇故事.
1900/1/1 0:00:00作者:ColinWu 原文标题:《币安与FTX交锋白热化原因是什么?FTX会暴雷吗?》随着CoinDesk曝出Alameda财务数据,此事虽然与币安无关,但币安的攻击从未停止.
1900/1/1 0:00:00来源:老雅痞 归来的“隐士”,从“昏迷”中醒来的人,决定现在了解市场的新人:如果你不知道今年对加密货币市场来说意味着什么,下面是我的思考,希望对你有帮助.
1900/1/1 0:00:0021:00-7:00关键词:加息、推特、Circle、高盛1.美联储12月加息75个基点的概率为34.7%;2.马斯克欲削减推特10亿美元成本.
1900/1/1 0:00:00原文作者:MichaelNadeau,来源:TheDeFiReport本周我们将重温代币经济学101。具体来说,我们正在研究顶级Layer1智能合约区块链的代币模型.
1900/1/1 0:00:00