今年五月初,Polkadot 在其 v0.9.19 中正式启用了 XCM(Cross-consensus Messaging Format),其中跨共识的涵义在于,这种通信格式不仅能在 Polkadtot 链间的 UMP、DMP 和 XCMP 中采用,还能够在智能合约、Pallet、桥以至 SPREE(Shared Protected Runtime Execution Enclaves)之间进行通信。(注:Pallet 相当于一系列有特定用途、可组合的模块和工具包,例如 EVM Pallet 的用途是在 Substrate 链上集成基于 Solidty 的合约;SPREE 模块是一种去信任的消息模块,用于确保在收到消息之后以何种方式执行代码) 需要注意 XCM 与 XCMP 的区别。XCM 是一种共识系统之间相互通信的「格式」,其效用在于表达接收消息者得到消息应该做什么。而 XCMP 是一种消息传递的「协议」。 本质上,XCM 的消息是运行在非图灵完备虚拟机 XCVM(Cross-Consensus Virtual Machine)上的单个或一系列指令,换句话说,XCVM 的指令集构成了 XCM 消息的全部内容。 Polkadot 提出 XCM 和 XCMP,实际上是为平行链间通信提供了原生、通用性的支持,这样平行链间能够实现直接通信,而无需依赖专门的跨链桥,使整个 Polkadot 网络的互操作性在协议层上更加统一。 在 XCM 启用后不久,Moonbeam 与 Acala 率先宣布启用基于 XCM 的双向 HRMP 进行跨链通信,实现两条链上原生资产的自由流动。 例如,Acala 上的 $ACA 和 $aUSD 可以跨链到 Moonbeam,作为 XC-20 资产($xcACA 和 $xcaUSD)实现与以太坊生态的互联互通。Moonbeam 的原生代币 $GLMR 亦可在 Acala 上作为抵押品来铸造 $aUSD 或者参与质押。 Moonbeam 与 Acala 两大生态打通 XCM 连接是一个里程碑事件,象征着 Polkadot 擘画的跨链图景正在缓缓铺开。随着其他平行链启用基于 XCM 的跨链通信,我们将看到更多类似的用例,并激发更大的想象空间。 3.2.Cosmos IBC 自底向上地,Cosmos 的体系依次基于 Tendermint Core、IBC 和 Cosmos SDK,三者分别是 BFT 共识引擎、跨链通信协议和开发框架。 作为跨链通信协议的 IBC 于去年 3 月在 Cosmos Stargate 升级时正式开始实施,其语义和设计原理由链间标准 ICS(Inter-chain Standard)所制定。 类比于互联网通信协议 TCP / IP 的层级体系,IBC 可分解为传输层和应用层。传输层提供必要的基础设施以在链间建立安全连接和验证数据包;应用层准确定义了这些数据包应该如何被发送方打包、以及如何被接收方解释。 上图描述了 IBC 数据包的生命周期。 IBC 采用「锁定 - 铸造」的资产跨链模型。如上图,Zone A 想要将资产跨链转移到 Zone B,需要锁定代币并将证明发送给 Zone B,经验证后,Zone B 在本身链上铸造等量的代币。该过程中资产并非产生了实际转移,而是在 Zone A 锁定这笔资产,在 Zone B 重新铸造了等额的同一资产。 最终性(Finality)指的是加密货币交易一旦完成,即无法被任意更改或取消。以上过程描述的是即时最终性的情况。而对于比特币这样的概率最终性区块链,需要引入 Peg-Zone 作为代理链(注:目前 Cosmos 与以太坊之间的 Peg-Zone 是 Gravity Bridge),并确定一个最终性的阈值:例如,假定某条链在某笔交易发生之后产出了 100 个新区块,认为实现了(伪)最终性。 当前,Cosmos 生态中已经囊括 39 条链、78 个验证人,总质押资产价值超过 31 亿美金。一些潜在的空投机会成为了吸引用户流入 Cosmos 生态动力之一。但 Terra 的香消玉殒显然对 Cosmos 生态造成了巨大破坏,使生态的总锁仓量缩水严重。 3.3. 轻客户端 我们从轻客户端的角度来看 XCMP 和 IBC。 轻客户端(或轻节点)最早是区别于全节点的一种说法,用于比特币的简化支付验证(SPV)。更广义来讲,智能合约也可以是轻客户端。这样的轻客户端往往不与链进行直接交互,而依赖全节点作为中介,从全节点请求某种信息,例如发送交易、验证账户余额和请求区块头。 在跨链通信时,中继者对源链上的事件进行监控,并生成事件的密码学证明,将证明与区块头一起转发到目标链上的智能合约(即轻客户端)。轻客户端验证某一特定事件,并以此为凭据,执行某些动作。以上我们讨论的 Polkadot XCMP 和 Cosmos IBC 都采用了轻客户端模型。 除此之外,NEAR 的 RainbowBridge 也是典型的轻客户端模型。轻客户端作为智能合约,分别部署在以太坊(存储 NEAR 的区块头)和 NEAR(存储以太坊的区块头)上。这些区块头由 Relayer 进行定期更新,更新频率取决于经济效率上的权衡 —— 在以太坊上更新 NEAR 的区块头设置为 12 至 16 小时。Connector 则负责处理特定资产的跨链逻辑(如 ERC-20 代币或 NFT)。 RainbowBridge 的速度与开销主要取决于以太坊。将资产从以太坊发送到 NEAR 大约需要 6 分钟(20 个区块)。将资产从 NEAR 发送回以太坊目前最多需要 16 个小时(由于以太坊最终性的时间花费)。 通过上述对 XCM / XCMP、IBC 和 RainbowBridge 的梳理,我们对轻客户端模型有了基本的认知。轻客户端的优势在于安全性,通过对某些信息进行验证,两条链之间可以知悉对手链上发生了什么,而无需依赖对外部验证者的信任假设,故安全性基本等同与链本身。 特别地,XCMP 的安全性属于 Shared Security,依赖于中继链提供的全局安全性,因为跨链消息的验证是由 Validators 完成的,随后 Validators 把包含该消息的区块包含到中继链上。 上表中 Cosmos 的 Interchain Security 是一种特殊的 Shared Security,即多链共享同一验证者集并进行出块。由于一些小型链的验证者较为薄弱,容易受到攻击,因此 Interchain Security 相当于帮助他们继承成熟网络的安全性。 采用 Cosmos IBC 的通信需要两条链之间彼此信任,而 RainbowBridge 则要求 NEAR 与以太坊之间彼此信任,这也是对区块头进行有效性验证的基本前提。 而轻客户端的缺点在于:对这些证明的验证有着不菲的成本;此外还涉及到连接性的问题,需要为每两条链之间的通信部署轻客户端 —— 当然,Polkadot 和 Cosmos 的原生通信机制很好地解决了生态系统内部的连接性问题。 作为小结,在上表中对 XCMP/XCM、Cosmos IBC 和 NEAR RainbowBridge 进行了简要的对比,其中一些数据可能直接涉及到生态间的对比。(RainbowBridge 仅仅涉及到 NEAR 与以太坊的跨链,不像前两者属于跨链生态,但作为轻客户端的一种,我们同样放在这里做个对比。) 注:以上 / 下案例项目均为 IOSG Portfolio,举例仅供信息交流,不构成投资建议。个人投资决策请 DYOR! 开发框架 「开箱即用」指一系列现成的软 / 硬件或工具包,开发者能够直接拿过来使用,而不需要花时间和精力重新实现这些功能。 Substrate 和 Cosmos SDK 即是这样的框架:对底层逻辑进行封装,提供一些预构建模块,进行灵活、可定制的模块组合,用于搭建区块链与应用。在互操作性方面,Substrate 和 Cosmos SDK 都分别提供了对 Polkadot 和 Cosmos 生态的原生支持。 Substrate 提供三种开发方式:Substrate Node 预先提供了节点配置,仅需额外配置一个 JSON 文件即可一键搭链;Substrate FRAME 提供了一系列的模块和组件(即上述提到的 Pallet),开发者亦可编写 Pallet 并进行自由组合;Substrate Core 更加高维和抽象,开发者可以从头设计运行时(注:运行时本质是状态转换函数,是 Substrate 中的核心概念,代表链的状态存储以及状态将被如何更改)这三种方式的开发难度和技术灵活度都是递增的。 Polkadot 和 Kusama 都基于 Substrate 进行开发。但 Substrate 本身是一种通用化的开发框架,支持与 Polkadot 的无缝连接,并不意味着所有 Substrate 都需要与 Polkadot 有强绑定的关系。 区别于智能合约,Cosmos SDK 提出了应用链(Application-specific Blockchains)的概念(也即为单个应用而定制的区块链),并对底层的 BFT 共识引擎 Tendermint Core 和网络层进行封装,借助 ABCI(Application Blockchain Interface)实现与应用层的连接。 除 Cosmos SDK 之外还有一些扩展工具作为补充,例如基于 JavaScript 的 DeFi 组件 Agoric、基于 Wasm 的智能合约模块 CosmWasm 以及基于 Cosmos SDK 的 EVM 实现 Ethermint。 开发框架整体上提供的功能和工具大同小异,在细微处有不同的设计理念,在这里暂不再详细展开。 (P.S:一些主观的看法:在写作本文的时候,笔者在 Polkadot 和 Cosmos 的 Discord 开发者频道提了一些问题。在 Cosmos 提问时有专门的开发者社区 Mod 建立一个子区,一对一回答问题,是比较好的体验) 根据 Electric Capital 的报告,自 2017 年起,Web3 开发者数量开始实现大幅增长,截至 2021 年底,有超过 18,000 名开发者活跃在 Web3 领域。然而,对比传统开发者而言仍占少数。从行业发展的角度考虑,需要进一步降低链上应用开发的门槛,做好开发者服务。 繁荣的生态会吸引更多优质的开发者加入,毕竟 Substrate 和 Cosmos SDK 都强调了接入各自生态的便利性。事实上,选择开发框架也与选择其后的生态密不可分。 4.1. 小结 同样,我们对 Substrate 和 Cosmos SDK 进行了简单的对比。 思考与结语 我部分同意「胖应用」的论据(同时协议也未必需要「瘦」)。在工程上,不同链有不同链的权衡取舍,针对不同目标各自提出了独出心裁的技术方案,但诸如此类基础设施的终极目标是相对一致的 —— 服务于应用。我们不是要造空中楼阁,抛开应用空谈技术是书生意气。回看 18、19 年的叙事,动辄「以太坊杀手」、「百万 TPS」,用户关心这些吗?也许并不关心。所以应当有一些小而美的应用、用户接受度高的应用,先在链上跑起来。(我认为符合此描述的其中一个应用是 NFT Marketplace 聚合器 gem.xyz, 界面清爽、功能好用,对很多用户来说这就足够了。) 以太坊的设计使得建立在其上的应用和协议彼此受限、且不可避免地竞争底层资源。多链生态的起势一定程度上分担了以太坊的压力,但实际上也在蚕食其领先地位。与此同时,在熊市的视角下,以太坊回归到相对合理的 Gas 费用和交易速度也削弱了资金外流的动力。短期来看,各条链能否产生「赚钱效应」是吸引用户流入的主要引力(例如 DeFi Kingdoms 和 STEPN)。中长期来看,用户流向与各条链生态的整体质量密不可分。最终用户会用其资金投票,使链间的竞争关系达到相对均衡。 可组合性、互操作性激发了新的叙事,但隐含的风险同样不容忽视。两年前我们只在以太坊上搭乐高,3 月 12 日的极端行情中,协议的层叠嵌套以及枯竭的流动性就引发了系统性风险。在近一年来的多链格局之下,我们有了更多的锚、跨链桥,以及更复杂的协议,但仍未经历那样的严峻考验。Terra 帝国的分崩离析也许仅仅是一个先兆。况且,当前市场处于中长期的下行趋势,我们需要如履薄冰,主动预估和评判风险。 需要承认,当前的多链生态依旧有些「虚胖」,一些看似繁荣的生态,说到底是一套协议、一套代码在另一条链上重新开设赌局而已。生态繁荣与否,不是单纯看项目数的多少,而需要综合评判用户的活跃度和资金的持续性。此外,资产跨链仍然是当下跨链的主要用例。在未来我们可以期待或者预见一些其他应用场景。一些有趣的用例可能是:在做 DID 时我们需要评估多链的活动轨迹;在做 NFT 借贷时我们可以抵押多链的 NFT 资产;甚至根据多链的资产活动变化以辅助套利决策;诸如此类。 跨链基础设施已经箭在弦上,但真正点燃多链生态需要大规模的增量用户,仅仅是瞄准存量用户的博弈、仅仅是资金在链间的辗转腾挪,无法带来指数级增长。考虑到这一点,提供用户友好的入口(例如多链钱包)至关重要。 我们应如何展望未来的多链格局?我们已经看到跨链生态正在变得繁荣起来,虽然在熊市中不可避免地显现颓势,但客观来说,跨链基础设施已经相对完善。(尽管如此,黑客对于跨链设施漏洞的攻击仍然层出不穷,保持乐观,但也应小心谨慎。) 合理猜测,下一个大周期的叙事是围绕各个链上优质应用构建起来的多链生态。「搭一条公链,满足所有需求」类似的言论可能会成为历史,毕竟我们的确没有必要在一条链上做完所有事情。期待在未来涌现出更多的应用链。 当下,我们仍处在多链格局的早期阶段。未来的路还有很长,所有平台均为六六财说,获取财富密码欢迎留言讨论。 查看更多 —- 编译者/作者:周说财经 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
详多链生态现状与未来格局
2022-07-05 周说财经 来源:区块链网络
LOADING...
相关阅读:
- 在DeFiChain区块链上构建dApp的4个理由2022-07-05
- 晚间必读5篇|中国电子报:元宇宙的傲慢与偏见2022-07-04
- 加密市场「大逃杀」:清算、抛售、挤兑2022-07-04
- BSN-DDC基础网络单日交易(Transaction)数超越以太坊2022-07-04
- 字节在元宇宙“跳动”2022-07-04