过去一年中,有不少明星应用都推出自己的应用链,或者宣布了部署自己应用链的计划。对于高增长项目来说,应用链方向无疑是可预见的未来。一些应用链相关的文章甚至开始预测,每个流行的 Web3 应用最终都会拥有自己的区块链。
基于这一趋势,一些项目创始人开始认为,最正确的做法是一开始就把应用构建为应用链。当然,我相信这对于某些应用来说是适用的,但选择过早把钱花在构建应用链上对于很多项目来说事实上是“自取其辱”。
我们经常在 Alliance DAO 社区中经常讨论这个话题,并且从中已经延伸出了一些解决办法,包括:应用链的最佳使用场景、构建应用链需解决的问题以及创业机会有哪些。
一、什么是应用链?
应用链旨在主要执行单个功能或应用程序,例如游戏或 DeFi 应用程序。这意味着应用程序可以使用链的全部资源,例如吞吐量、状态等,而不会与其他应用竞争。此外,应用本身可灵活优化链的技术架构、安全参数、吞吐量等以匹配应用程序需求。由于只针对特定应用,因此应用链一般不对开发人员“无许可”,而对用户“无许可”,在这个层面上,应用链背离了标准的区块链实践,即区块链对用户和开发人员都是开放的。
把应用链比作“小城镇”
我们可以把智能合约链(公链)比作城市,来理解创始人在选择构建应用链时要做什么妥协。
以太坊和 Solana 等通用计算链就像大都市,拥有多样化的基础设施来支持不同类型的业务(应用程序)。这使得通用连锁店更受欢迎、更拥挤、通常更贵,有时甚至更忙。但这种流行为生态系统中的企业创造了大量流量和机会:从一项业务转到另一项业务很容易。也可以结合不同的商业活动来创造新的有趣的商业。
而搭建自己应用链就像具有单一商业活动的小城镇。小镇可以制定自己的规则和政策。它不那么拥挤,也更便宜,但可能与外部世界没有很好的联系。镇上的每个人都在使用镇上的单一业务。如果它足够受欢迎且足够独特,客户甚至可能会为了这项特定业务而来到这个“特色小镇”。
此外,还有安全性差异。大城市人口更多、更富裕、更强大。这座城市所有企业都有一个共同的利益,那就是拥有一个安全可靠的城市。这些因素使大城市更难攻击、更安全。另一方面,小城镇的安全与单一业务的受欢迎程度和成功紧密相关。如果生意做得好,城镇居民的数量就会增加,城镇会变得更强大,如果生意不好,人们就会离开,这会使城镇的安全性降低,更容易受到攻击。
在这两种模式的折中方案是特定行业链,例如 DeFi 或游戏专用链,相当于郊区城市,它比小城镇更受欢迎和安全,但没有大城市那样繁忙。
通用计算链、应用链和行业链可以共存并满足不同的需求。重要的是识别哪些用例需要应用链,而不是在通用计算链或行业链上构建智能合约。本文第一部分讨论了应用链及其使用场景,第二部分涵盖了该领域中存在的创业机会,最后一部分比较了不同应用链的实现方法。
二、应用链具体的使用场景有哪些?
正如我们在过去几年中看到的那样,可以出于各种原因启动应用链。在本节中,我们将讨论哪些最常见的场景更适合应用链。
1、生态系统需要
Cosmos 和 Polkadot 等生态系统上的应用程序构建者基本需要将其应用程序构建为应用链。两种协议都专注于互联互通的多链生态,任一生态系统中的主链都没有实现支持智能合约的执行引擎。因此,想在这两个生态构建应用,要么自己搭建应用链,要么选择已经实现了通用计算执行引擎的链。
在 Cosmos 生态系统中,实现智能合约执行引擎的生态链包括 Evmos(EVM 兼容)和 Juno(CosmWasm 智能合约),其生态都包含多个 DeFi 和 NFT 应用程序,而Osmosis (AMM DEX)、Mars hub(贷款)和 Secret(隐私)这些则属于应用链。
在 Polkadot 生态系统中,通用计算平行链包括 Moonbeam(与 EVM 兼容)和 Astar(WASM 智能合约)。Polkadot 上的应用链示例包括 PolkaDex(订单簿 DEX)、Phala(隐私)和 Nodle(物联网网络)。
2、吞吐量的需求
当一些通用计算链无法满足应用的吞吐量需求或费用需求时,选择构建应用链是最理想的状态。如果想在Web3中构建类似 Web2 性能的应用,应用链就是不二之选。
游戏应用是最佳示例。大多数互动游戏都需要极高的吞吐量来支持用户的游戏交互。此外,交易应该是免费的或费用可以忽略不计。通用计算链则无法满足这些要求。一些例子包括:
- Axie Infinity:在 Ronin 侧链上推出
- Sorare:以 StarkEx L2 形式推出的梦幻足球游戏
在游戏之外,订单簿交易等 DeFi 协议通常需要高吞吐量才能为专业交易者提供卓越的用户体验。一个已知的例子是 DeFi 衍生品交易所 dYdX。dYdX 协议目前每秒处理约 1000 个订单。所需的链吞吐量应超过 1000 TPS。出于这个原因,dYdX V3 是作为基于 StarkEx 技术的专用以太坊 Rollup 推出的。随着协议计划进一步扩展需要更高的吞吐量,它正在转向应用链。因此,dYdX 宣布将为其 V4 使用专用的 Cosmos 链。
3、添加特定技术的需求
如果应用程序需要 L1 链上没有的特定技术,另一种方法是构建一个实现该技术的应用链。最好的例子是零知识证明,例如 zk-Snarks 或 zk-Starks。隐私支付或交易等注重隐私的应用程序需要 zk 证明来构建区块。然而,生成 zk 证明是计算密集型的,并且这些计算太昂贵而无法在链上执行。
在这种情况下,最好的方法是在应用链上实现所需的技术。例如 Aztec,这是一个维护隐私的支付和交易应用程序,在以太坊上推出了 L2。此外还有 Cosmos 生态系统上的 Secret 应用链。
4、提高应用经济性的需求
当团队将应用程序构建为 L1 区块链上的智能合约时,用户需向应用程序支付两种费用:原生应用程序费用和 gas 费用。原生应用程序费用,例如交易所的交易费用或借贷协议的差价,本质上是应用程序的收入流。该收入通常被用作激励应用参与者发展应用社区并加速应用采用的激励措施。
另一方面,应用的用户向 L1 的验证者支付gas费用。gas 费用是应用用户的开销,会降低用户体验。gas 费对应用的经济没有贡献,相当于应用给 L1 的托管服务交“租金”。尽管这笔“租金”能够保证应用的安全,但更理想的是,这部分钱如果能留存在应用经济系统内部,就更能激励用户了。
应用链就支持这种情况,项目方可以控制自己的 gas 费来分配奖励给试用应用的参与者。例如,Yuga Labs 想将 Bored Ape Yacht Club ( BAYC ) 生态系统分离为一个独立的链就是考虑了这方面的情况。BAYC社区在项目 NFT 资产的铸造期间向以太坊网络支付了巨额费用,而迁移到自己的应用链会将这些费用保留在 BAYC 的经济系统中。
三、应用链有哪些风险?
尽管应用链有以上优点,但也面临不少风险。比如构建应用链比开发智能合约复杂得多,需要开发与应用程序的核心业务无关的基础设施。此外,应用链增加了安全性和可组合性风险。
1、安全保证
智能合约应用程序从底层 L1 获取安全性。正如前面在“大都会VS小城镇”类比中所讨论的,由于L1支持多种应用程序,因此保持 L1 安全的动机在大量 L1 参与者之间共享。这使得 L1 更安全,更难攻击。此外,L1 安全保证独立于特定应用程序的采用。
在应用链中,安全性很大程度上取决于应用的采用情况和应用原生代币的价格。根据实施细节,应用链可以是 L2 排序器或独立的 PoS 验证器。在这两种情况下,验证者奖励通常以原生应用代币计价。验证者必须质押原生代币并使用具有高正常运行时间(high uptime)的复杂基础设施才能参与网络。验证奖励需要高于验证者所承担的运营成本和代币质押的风险。该模型的一些问题包括:
- 质押风险可能会让加入网络的情况变复杂,甚至会吸引业余验证者,这可能会危及网络安全和正常运行时间。
- 验证者奖励对代币价格的依赖,可能会促使应用开发人员使用高代币通胀或不可持续的游戏化代币经济学。
- 如果应用采用率低且代币价格低,则网络安全性变弱,这会使得作恶者能够以低成本攻击网络。
2、成本和团队时间
启动应用链会附带一系列需要构建的额外基础设施以及与验证者协调的活动。在基础设施方面,需要公共 RPC 节点来允许钱包和用户与链进行交互。还需要包括区块浏览器和存档节点在内的数据分析基础设施,来允许用户查看活动。还需要网络监控和验证者信息等服务。
所以,需要额外搭建的基础设施很多,这就需要大量成本和工程时间,而且工程团队花了很多时间在处理与应用逻辑无关的任务上。此外,还包含维护区块链的成本,维护要进行大量计划并与验证者进行沟通,来安排网络升级或响应错误和网络停机时间。
一般来说,开发应用链需要团队更强大,成本也更高,这是初创公司无法承受的,尤其是在早期阶段。这些冗杂的事物会对应用的发展逻辑造成干扰,也会成为项目快速适应和实现产品市场契合的障碍。
3、缺乏可组合性
将应用程序构建为智能合约的主要优势之一是原子可组合性(atomic composability)。应用程序可以相互构建,用户可以在同一事务中与多个协议无缝交互。例如智能 DEX 路由器,可以通过不同的 AMM 路由单笔交易以实现最佳定价。
另一个例子是闪电贷,其中交易可以从借贷协议中借款,并在偿还贷款之前在 AMM 上执行交易或套利。这些交互可在同一个事务中“原子地”发生。原子可组合性是 Web 3 应用程序中的一项独特功能,可实现有趣的行为和商业机会。
应用链缺乏这种原子可组合性,因为每个应用都与其他应用隔离开来。应用程序之间的交互需要跨链桥或消息传递,这需要跨多个区块且不能“原子可组合”。当然,原子可组合性的缺乏或许会催生一些有趣的初创公司来解决这个问题。例如:
4、跨链风险
应用链的另一个问题是跨链资产的风险增加。具体而言,DeFi 应用程序需要桥接多种资产,例如 BTC、ETH 和稳定币。资产跨链会降低用户体验并带来更大的风险。跨链桥是被攻击的常见目标,如果跨链桥被破坏,可能会使需要资产跨链的DeFi 应用程序产生坏账。
对于无法吸引信誉好且资金充足的跨链桥的应用链,风险甚至更高。在这些情况下,应用链可能会求助于中心化的跨链桥,例如中心化交易所或开发自己的跨链桥。
四、应用链领域有哪些创业机会?
应用链生态系统的挑战为初创公司创造了解决问题的机会。在这部分,我们讨论了其中的一些机会,并鼓励更多有兴趣的创始人伸出援手。
1、高性能 DeFi 协议
这里的关键推动因素是使用可根据 DeFi 协议需求进行调整的可定制技术堆栈。旨在与 Web 2 性能竞争的 DeFi 协议需要作为应用链来实现。中央限价订单簿 (CLOB) 交易所是最佳选择。dYdX 衍生品交易所开启了这一趋势,预计现货和商品交易所将被构建为应用链,从而受益于低费用和低延迟。
2、应用链游戏引擎
一些受限于公链性能的应用目前来搭建应用链的选择还比较有限,StarkEx 在这方面是一个不错的选择。希望能看到初创公司为链上游戏构建新的高效架构,可以支持 10万+ 的 TPS。
3、用于定制、部署和维护侧链和 L2 的开发人员工具
使用适当的架构启动侧链或 Rollup 来作为应用链非常复杂,促进这项任务的开发者平台可以成为一项非常有价值的业务,想想应用链的 Alchemy。
4、支持人工智能的应用链
与零知识证明类似,人工智能是一种计算密集型的变革性技术。因此,支持 AI 的应用程序不能构建在链上。有许多成功的 web 2 AI 产品需要用户支付大量订阅费用。可以使用应用链向公众开放对 AI 应用程序的访问。考虑构建运行训练有素的 AI 模型的应用程序,例如 Dall-E 或 GPT3,这些模型对公众开放使用。
5、可组合性解决方案和跨链通信
应用链中缺乏原子可组合性,为初创公司创造跨链消息传递并创建感知可组合性提供了机会。想法包括:
- 用户前端在后台执行跨链功能,例如 IBC 传输或 LayerZero 消息传递,并创建多个应用程序以可组合方式工作。比如跨链zapper。
- 通过多方计算 (MPC) 实现安全多链账户的钱包,并通过在多链上执行同时交易来本地处理跨链活动。例如跨链套利。
6、跨链 DeFi 协议
尽管应用链在吞吐量方面具有多项优势,但也导致流动性碎片化,从而导致滑点增加和用户体验下降。跨链 DeFi 协议自动在不同链之间拆分交易以获得更好的定价,将拥有更好的用户体验和更大的客户群。
7、EVM 和非 EVM 链之间的去信任跨链讯息传输
应用链实现分为 Cosmos、Polkadot 和 EVM L2。提高可组合性的一种可能方法是构建通用的去信任跨链消息传递协议,该协议可以连接 EVM L2、Cosmos zone、Polkadot 平行链等。这样的产品可以取代现有的跨链桥,并促进每年数十亿美元的交易量。
8、开启跨链安全共享
使用支持跨链安全的产品可以缓解应用链的安全挑战。与 PoW 链的合并挖矿类似,我们设想了可以允许不相关 PoS 链之间共享安全性的方法,例如,验证者抵押 ETH 而不是原生应用链代币来保护应用链。流动性质押协议可能在该制度中发挥重要作用。
五、如何搭建一条应用链?
应用链能够以不同复杂性和安全性的多种方式实现。本节简要比较了一些构建应用链的方式。
1、Cosmsos Zone
Cosmos 是第一个设想多链世界的生态系统。基于这一愿景,Cosmos 的开发专注于标准化和简化推出可以互连在一起的专用链的过程。这项工作产生了 Cosmos SDK,这是一个用于定制和开发区块链的模块化框架。Cosmos SDK 默认支持 Tendermint 共识机制,但允许使用其他共识机制。Cosmos SDK 后来通过添加 IBC 模块进行了改进,该模块允许基于 Tendermint 的链之间的无信任通信。
这些链中的每一个都称为一个Zone(区域)。Cosmos 生态系统已经发展到超过 45 个 zone,由700 多个IBC互连中继器组成。其中,不少 Cosmos Zone 都被用来做单一目的应用链。Osmosis 是其中一个最大的 Cosmos Zone,是实现了 AMM DEX 的应用链。
Cosmos 最初采用了隔离安全的理念,即每个区域负责自己的安全。每个 zone 都需要招募验证者来运行网络,并用 zone 的原生代币奖励验证者。尽管这种方法很灵活,但它增加了应用链建设者的进入门槛。因此,Cosmos 正在实施一项更改,允许较小的 zone 通过跨链安全模块从 Cosmos Hub 获取安全性。
2、Polkadot 平行链
与 Cosmos 类似,Polkadot 发展出了一个多链生态系统。Polkadot 生态中的链称为平行链,它们可以使用 Substrate SDK 启动。 Polkadot 和 Cosmos 之间的主要区别在于,Polkadot 从一开始就统一了安全愿景。所有平行链都与称为中继链的 Polkadot 主链共享安全性。中继链的主要功能是为平行链提供共识和安全性。因此,中继链不实现智能合约功能。
由于共享安全保障,Polkadot 生态系统不允许平行链在未经许可的情况下启动。相反,平行链插槽被拍卖给想要构建自定义链的开发人员。竞拍者必须锁定 DOT,以确保平行链插槽。到目前为止,已经有 27 个平行链被拍卖。
Polkadot 上的不同平行链可以通过交叉共识消息 (XCM) 格式进行通信。XCM 通信还在实施阶段,目前可以正常工作,但需要将消息传递数据存储到中继链。
3、Avalanche 子网
Avalanche 的子网实现方法与 Cosmos 非常相似。开发者可以推出自己的子网,每个子网可以支持多条链。子网需要招募自己的验证者。但是,除了验证专用子网之外,这些验证器还需要验证 Avalanche 的主网络。尽管这一要求提高了主网络的安全性,但与 Cosmos 相比,它增加了专用子网的进入门槛。
目前,子网生态系统不支持本地子网间通信,子网必须开发自己的网关。当然,为了增加采用率,Avalanche 团队正努力支持相关功能。
4、以太坊 L2
在以太坊中,“应用链”一词可能并不总能准确描述需要专用环境的应用程序。在以太坊中,此类应用既可以实现为专用的 L2,也可以实现为侧链。L2实现不能称为应用链,因为它没有实现完整的区块链堆栈。L2 是Rollup或验证,仅支持事务的执行和排序。对于Rollup,共识和数据可用性由以太坊 L1 提供。对于验证,L1 只是提供共识,数据存储在链下。使用此架构的应用示例包括 Sorare 和 Immutable X。
另一种方法,即侧链,需要启动由少数验证者验证的独立区块链,以实现高吞吐量。侧链通常由同一组验证者验证的桥连接到以太坊。已知的例子是支持 Axie Infinity 游戏的 Ronin 侧链。
与所有其他方法相比,L2 实现方法的主要优点是其优越的安全保证。L2 通过 zk Proofs 或欺诈证明从以太坊 L1 继承安全性。尽管如此,它们仍然可以实现非常高的吞吐量和微不足道的费用。这些要求非常适合游戏应用的需求。
L2 方法的主要缺点是 L2 之间或 L2 和 L1 之间的可组合性更加困难。在不同Rollup之间快速转移资产通常需要第三方提供商,例如 LayerZero。尽管有些技术支持在在不通过 L1 的情况下在Rollup之间去信任地转移资产,但这些技术会产生大量延迟,而像DeFi 这类应用就无法容忍这些延迟。这就是为什么 DeFi 协议使用 Optimism 和 Arbitrum 等通用 L2 作为扩展机制而不是特定于应用程序的 L2。
使用 L2 方法的另一个挑战是实现的复杂性,与使用 Cosmos SDK 启动 Cosmos 应用链的相比,在以太坊上启动特定于应用的 L2 没有标准的脚本。但是,随着以太坊在以 Rollup 为中心的路线图上走得更远,这种情况会在未来有所改善。
结论
应用链叙事正获得关注,但也在朝着与最初设想不同的方向发展。Cosmos、Polkadot、Avalanche 和 Ethereum 上的应用链的实现正在趋向一种共享安全方法,但差异很小。有了共享安全性,应用链实际上并不需要共识机制。相反,应用程序可以只使用为应用程序服务的专用执行环境,并使用 L1 来实现共识和数据可用性。这个执行环境可以是一个 Rollup 或遵循模块化区块链方法的独立执行层。