全长930字,预计阅读 3 分钟 作者:Louis Liu 撰文:MiX

6月23日,dYdX 宣布将迁移到 Cosmos 生态,构建应用链,并在即将到来的 dYdX V4 版本进行迁移,震动了以太坊社区甚至整个区块链圈子。

无独有偶,章鱼网络生态应用链 Fusotao Protocol 和 dYdX 同样是基于订单簿的撮合系统的验证协议,不同的是 Fusotao 从一开始就选择了应用链技术栈,如今主网即将启动,那么:

  1. 为什么 dYdX 和 Fusotao 会双双选择应用链?
  2. 应用链的优势是什么?
  3. 开发者该如何选择技术栈?
  4. Cosmos、Polkadot 和 Octopus Network 之间的优劣势?
  5. Web3 时代协议层的价值捕获潜力是不是要高于应用层?‍

Echo:dYdX 放弃 StarkWare 对于以太坊生态是一个很大的冲击。StarkWare 是 ZK Rollup 的龙头项目。V神也很支持 ZK Rollup 扩容,这也是公认未来天花板非常高的一个扩容方案。

所以关于 dYdX 出走以太坊选择自建应用链的原因,有人说可能是 Layer2 性能不够,以太坊开发进度太慢,对于 dYdX 这种订单簿模式的交易市场来说,无法满足交易及时性、互操作性等要求。

刘老师觉得 dYdX 出走以太坊主要的原因有哪些?

Louis:dYdX 官方 Twitter 发布后,dYdX 创始人 Antonio 自己也发了几个 Twitter ,另外 Bankless 也给他做了访谈,Antonio 他自己说得很清楚,他一直就是把是把产品挂在嘴边上的人。

大家如果注意来龙去脉的话,在去年下半年,Zhu Su 发 Twitter 说要放弃以太坊,产生很大的争论,Antonio当时就发 Twitter 表示支持,他说以太坊在过去几年原地踏步。Antonio 是非常年轻非常有天分的开发者,他的团队也是极其有实力也非常激进的团队,他们总是希望自己的下一代产品要比上一代产品好十倍。

那么他要让 dYdX 再好十倍,这个愿望在以太坊上已经不可能实现了,他们选择 Layer2尝试之后发现并不满足要求。dYdX 主要面向高频交易的用户,所以 Antonio 认为 dYdX 单个应用就需要 1000 TPS, 1 秒里1000笔交易只有10笔交易是最终成交的,另外99%的交易都会撤单,这是高频交易的特性。下单撤单这样的交易没有产生经济价值,最好 Gas Fee 极低甚至是零。

这样的诉求在 Layer1 或者 Layer2 上都不可能实现,因为成本就在那,那么只有自建应用链。只要应用链具备Anti Sybil Attack机制,就可以让交易费为0。这样的话High Frequency Trader 会用得非常爽,传统金融市场的玩法都可以在链上去做。

这让我想起了2021年四季度的时候,我有个做开发的朋友张宇,他来找我说要做Order Book DEX,希望做成应用链。我们很深入地进行探讨,因为应用链有优势,也有弱点。我们在做 Octopus Network 的时候,明确说过不打算支持 DeFi 应用。因为通常DeFi 对 Composability 的要求很高。应用链的 Composability并不好,资产都需要用户做跨链转账才能进来,而且跟其他链的协议是没有可组合性的。我们认为在 Composability 上的损失对 DeFi 协议是不可接受的,即便能获得了性能高和成本低等好处。

张宇坚持说他宁愿损失掉 Composability,换取零成本交易的优势。他认为这对于 Order Book DEX 来说至关重要。最后张宇说服了我,所以章鱼网络有了Fusotao 应用链,这也是目前为止章鱼网络唯一的 DeFi 应用链。所以说世事无绝对,都是取舍折中。

Fusotao 选择应用链跟 dYdX 的逻辑是一样的,都是从最终用户的角度来考虑怎么能够提供最好的产品。Antonio 认为最好的产品就是「用户体验、功能去中心化程度和安全性的最佳组合」。他从一开始就说我 100% 都不在意dYdX 是建在哪条链上,只要最好的产品。他也承认选择应用链方向有风险,但是他认为这是唯一可能让 dYdX 在未来的几个月或者一年的时间内,就提供比上一代产品好十倍的机会。他公开说他不怕承担风险,不怕失败,甚至承认这个选择有可能是错的。我觉得 Antonio 非常清醒,也非常有勇气。

区块链设计无论是扩容,还是其他战略性的基础方向上,每个选择都有风险。我觉得对社区开诚布公是很有必要的。你不要老说自己选择的优势,因为劣势一定也是有的,没有万能良药,都有利弊。把利弊说清楚,只要社区认可,就没有问题。

至于说其他的协议会不会跟进,我觉得应该独立思考。dYdX 做了一个很好的榜样,就是对自己的社区负责,不是说在以太坊上做应用就要忠于以太坊,你应该忠于自己协议的社区,责任是让社区的利益最大化。

Echo:我觉得刚才刘老师提到很重要的一点就是协议要考虑清楚自己想要什么东西,以及能牺牲什么。像 dYdX 去做应用链就是为了提升更高的 TPS ,但是选择应用链确实也会牺牲一定的 Composability 。那除了这两个特征,不知道刘老师这边还能不能列举更多应用链的利弊,或者说你觉得什么样的使用场景是会更适合去做应用链?

Louis:应用链的优势主要是三个,一个是速度快,成本低。因为它是一个独立的链。应用链TPS 跟普通的公链是一样的,比如就跟 BSC 或者 Avalanche 这样的公链在同一个量级,只不过这条链是一个应用专用的,所以就会很宽裕。速度快、成本低是优良用户体验的支柱。

第二个点是可定制性,因为这一条链是为应用服务的。应用链基本上都采用很强大的开发工具, Cosmos SDK 或者 Substrate 框架来做。这条链的所有参数,所有用户交互都可以为特定应用去优化,比智能合约的功能要强大很多。我举个例子,以太坊的 DeFi 协议没有办法应对 MEV 问题。Antonio 在那个访谈没提到 dYdX 的 Front Run 或者 MEV 的问题,但我觉得其实还是挺重要。

对于这么大量级的交易协议,如果在 Layer2上面做, Layer2 的中心化程度就会比较高。其实中心化程度特别难以准确地界定。因为去中心化有很多的维度。Antonio 有一个观点很对,也是一个老观点,就是协议的去中心化程度是由那个最中心化的部分决定的。和水桶原理类似,水桶能盛多少水是由最短的那块板子决定的。那么在 Layer 2上面最大的问题就是 Sequencer 排序器的中心化,Sequencer 中心化就意味着没有办法实现 Censorship Resistancy 抗审查。但抗审查是去中心化特别重要的属性,而且是在网络实现设计里最难保障的一个去中心化属性。相对来说 Permissionless 和 Trustless 比较容易实现, Censorship Resistancy 特别难保障。但是在Layer2 Rollup 的设计里,是一个去中心化的硬伤。

回到 Composability 上面,像 dYdX 这样的协议,如果是用应用链的话,那也就说底层协议和上层应用协议都是它控制的,可以从底层去对抗 MEV 的,比如 Cosmos 生态的 Osmosis ,这个 DEX 应用链计划用阈值签名加密 Mem Pool 。就是交易进 Mem Pool 是加密的,只有 2/3 的 Validator 签名之后,已经进块了,交易才能解密,这时已经没有 Front Run 的机会了。虽然现在还没实现,但是这个方案在应用链是可能的,因为整个的 Consensus 包括 Mem Pool 的处理全是应用链自己的,所以可以自己决定。而在公链上是完全不可能的,在公链只能控制应用层。这就是应用链的第二大优势「可定制性」:你可以改所有东西,可以搞各种各样的计算或者策略来解决协议中的问题,优化用户体验。

第三个点,我们认为应用链比较重要的优势是可升级性。智能合约是有「可验证性」和「可变性」之间的矛盾。所以在 Layer1 层面上,智能合约是不可变的,不可变保证可验证性或者说是执行规则的可预见性,当然这也就使得协议的灵活度大大下降。

所以现在智能合约形态的 DeFi 协议,通常是每年升级一次,比如 Uniswap V1、V2、V3,这是因为每次升级其实都是做一个新的 Uniswap,然后号召社区去迁过来。传统互联网应用那种快速迭代的做法肯定不行,因为需要在社区达成共识,再在链上治理上达成共识,或者链下治理达成共识,成本都非常高。

但是应用链首先社区是清晰的,尤其是 Substrate 框架开发的应用链有非常完善的链上治理模块。那么也就是说在应用社区内达成共识是一个可编程的过程,你可以参考别人的治理实现,然后比如每月升级一次,这相比智能合约而言是一个数量级的提高。

可升级性或者叫可进化性,是加密协议适应需求变化、适应技术发展、适应外部环境变化的基本能力。早期可能看起来不重要,但是协议之间比拼的是长跑,有点像生物的进化过程。进化得快,对外部环境或者是内在需求适应得快,那么可能几年下来结果就完全不一样。所以应用链的第三大优势是在可进化性上。

应用链主要损失的,一个是刚才说的 Composability 下降了;另外第二点是应用链的安全性一般来说没有公链那么高,但是这是指独立应用链。如果应用链加入多链网络,多链网络要提供的一项基本服务就是共享安全,解决应用链作为独立链,安全性不足的问题。

Echo:非常认同,我也觉得速度和灵活度是应用链最重要的特征,它就像独立王国一样,但它也是要为自己的安全全权负责。但是应用链其实也有很多选项,它可以加入不同的多链生态。刘老师能不能对比一下像 Polkadot、Cosmos Avalanche 还有 NEAR 这几个生态,项目方如果选择它们的话,各自的优劣势是什么?

Louis:首先如果你认为应用链是承载协议的合理形态,那么你需要考虑三个方面的问题,一个是怎么开发协议,就是用什么工具来实现协议;第二个是安全性;第三个是跨链。

刚才你说的这几个 Polkadot、Cosmos、Avalanche 还有 NEAR 加上 Octopus Network 我们是一体的,还可以加上 BSC 。BSC 是现在也在做侧链网络。BSC 选择的扩容方向是多链网络。

关于这几个生态,如果考虑第一个问题怎么来开发协议。如果像 Avalanche 和 BSC 他开发专用链,但是链上逻辑还是用智能合约。虽然独享一条链,但是应用没有享受到可定制性的优势。相当于底层还是做好的,只是在上面部署了智能合约,用户体验的改进还是很局限。比如说希望 Metamask 内嵌 fiat on-ramp,或者要改变它,是不行的。 Avalanche Subnet和 BSC 侧链只能控制虚拟机内运行的应用层逻辑,从这个维度上比较,我认为 Cosmos、Polkadot 和 NEAR 是有优势的。

Polkadot 和 NEAR 的 Octopus Network 都用的是 Substrate 做应用链开发。Cosmos 当然用 Cosmos SDK ,这两个工具都很成熟。我个人认为 Substrate 的功能更强大,比如说对 WASM 原生支持,比如 Rust 语言的安全性优势。最核心原因还是 Substrate 凝聚的开发投入要比 Cosmos SDK 要多得多,以我的了解就不在一个量级上。那么包括刚才说的 On-chain Governance 还有Off Chain Worker都是 Cosmos SDK 不具备的。

所以从协议开发的维度上,我认为 Polkadot 和 Octopus Network 是第一梯队,然后是 Cosmos ,最后是 EVM 兼容的应用链,包括Avalanche 和 BSC。

第二个问题是 Share Security,共享安全其实有多种做法。

第一集团是 Polkadot ,因为一旦加入,作为 Parachains 就有几十亿美元级别的安全等级,安全程度是最高的。但是也有很高的成本,应用链团队需要拍插槽。不过我们先不管成本,从共享安全级别来说, Polkadot 是第一

第二集团是 Octopus,Octopus 是这些多链生态基础设施里第二个实现了共享安全的。Octopus Network 是租用安全,安全性没有 Polkadot 那么高,但是你需要多少租多少,所以我们的成本相对 Polkadot 有优势,但是我们毕竟不能提供几十亿美元级别的安全性,所以把 Octopus Network 排第二。

第三集团就是 Cosmos 和 Avalanche和 BSC ,他们还没有实现共享安全。Cosmos 有 Cross-Chain Validation,也许今年年底实现,也可能是明年。届时 Cosmos 和 Octopus 在这个维度上是并列第二。

第三个问题就是跨链能力。跨链 Cosmos 排第一,因为有 IBC 协议。IBC 现在已经链接起50条链的最大的多链网络。Cosmos 第一,Octopus 第二,为啥 Octopus 第二呢?因为 Octopus 也是 IBC 协议,只不过我们的 IBC 是 Substrate IBC ,在实现进度上比 Cosmos SDK 的 IBC 要慢一些。再往下其实是差不多的。

Polkadot 大家一直觉得跨链做得很好,其实一点都不好。因为 XCMP 是 Polkadot 的内部 Parachains 之间的通讯,功能很强大。但是把 Polkadot 看成一条链,它跟外部的跨链很糟糕。至今没有跟以太坊搭建起无信任跨链桥是个硬伤。跟其他链的跨链桥也都是 Parachains 自己做的,基本都是多签桥,没有真正的无信任桥。

然后 Avalanche 其实是每个子网建一个 Avalanche 桥。是阈值签名的多签桥,在使用成本和速度上很有优势。但是它毕竟是个多签桥,是一个有信任的桥。最后 BSC 侧链的跨链方案我不了解,好像是 Celer 提供的。

所以我认为在跨链方面 Cosmos 第一, Octopus 第二,然后剩下的跨链还停留在有信任的跨链桥阶段。

Echo:我觉得刘老师的分类梯队非常实用,肯定可以指导很多开发者去选择。对于我们理解这些项目的异同其实也很有帮助。那前面我们讨论了很多应用链,包括适用场景,还有不同多链基础设施的性能特征。但是对于开发者来说,如果说我们从更加宏观的视角来看,他其实选择是更宽广的,他也不一定非要选择应用链。这里就想问一下刘老师,如果说从性能、安全、成本这些方面综合对比的话,那您觉得 Web 3 的开发者他应该怎么选择 Layer1、Layer2 或者应用链?

Louis:我们觉得最核心的考虑还是对 Composability 的需求。如果协议运行非常依赖其他协议,比如主要做发行的 NFT 项目,不可能自己创造非常大的、流动性非常好的市场,可以去 Opensea 上交易,那选择以太坊是最好的。如果选择应用链或者选择 Layer2,都是需要跨链的。选择应用链确实可以获得用户体验优势和速度成本的优势,但是 NFT 发行的经济运行就依赖于可组合性,一旦涉及到跨链,马上用户体验就会下降得很厉害。其实在 Layer2 上也是一样,仍然会有用户体验的损失,只不过 Layer2 的跨链桥比应用链的跨链桥确实更安全。

如果你是能自洽的体系,比如说链游。玩家上来玩有 NFT 有 Fungible Asset,比如 Axie Infinity ,可以预见到绝大多数的交易都是在经济体系内完成的,包括玩家之间相互买卖。这种情况做应用链是更好地选择,尤其是交易量比较高,用户体验要求也比较高。所以像链游协议,尤其是重磅链游,特别应该考虑应用链。

对 Layer2 我一直不是很喜欢。首先是 Layer2 我觉得有点被高估,因为是以太坊官方的扩容方向。因为以太坊官方打大旗,硬伤被忽略了。当然 Layer2 不是没有好处,安全性确实高。但是它的成本不低,扩容的前景其实有限。你说以太坊2.0上去之后会好一些嘛?以太坊2.0上线是长期过程,对应用在性能和成本上产生收益,那是几年以后的事了。

2015 年就说三五年后就有完整的以太坊2.0,现在感觉还是三五年之后。也许到了2027年,可能还是这个感觉。也要给以太坊说句公道话,他面临的问题跟其他的基础设施不一样。以太坊是在飞机的飞行过程中换引擎,其他的生态是在地上造飞机,难度是不可比较的。以太坊冒风险的成本太高了。如果你是凭空造个新东西,没有什么可失去的,你尽管去创新就好。

Echo:我觉得这是对于各个基础设施链的一个很好总结。但是确实如果要涉及到具体的选择的话,最核心的还是开发者对于自己应用未来需求的一个判断。

Louis:我再补充一句,其实很多开发者的选择生态,技术方面的考量是一方面,也在考量生态的兴旺程度,是否能得到资本的关注,是不是有助于获取用户。市场化的因素要并重,因为协议一旦选择了基础设施,做了开发、审计然后上线之后再去修改或者迁移,是要伤筋动骨的。所以技术因素和市场因素要并重。

Echo:同意,这是非常重要的决策,也是很考验开发者的判断能力。我们今天还有最后一个问题,可能比较抽象但是也挺有趣的。就是在 Web2 时代,巨头公司都有自己的杀手级的应用,你像抖音、微信,这些应用去造就公司的现金流。但是有人说在 Web3 时代,协议层的价值捕获潜力要高于应用层,这个不知道刘老师是怎么看的。

Louis:我认同这个观点。因为我们在 Web3 里说的去信任,就是说你跟对方不认识,但是你不需要对他这个人是好是坏做任何假设,你就敢跟他做交易,这就是去信任。去信任怎么实现呢?说穿了其实是靠抵押品实现。

例如在链上交换 Token。两个人都把Token转给一个协议 ,然后告诉协议自己的交易意愿,协议忠实执行两个人的意愿,把Token交。整个过程你跟交易对手不需要信任的。但是这个协议它得能够按照预期执行。按照预期执行的就是底层的链要安全。如果你这笔交易的经济价值高过了底层链的经济价值,或者欺骗你这笔交易获得的收益大于攻击底层链的成本,那这笔交易就变得不安全。所以说做这笔交易无信任的前提,是因为在底层有足够多的抵押品。POS 就是验证人有足够的 Staking ,如果作恶的话会被罚款,也就保证了上层的应用层协议是安全的。

底层链是安全的,在 POS 语境下其实就是足够多的抵押品。那么抵押品从哪来呢?抵押品就是基础设施的经济价值,基础设施的经济价值为上层所有的应用、所有的交易提供了担保。那么这也就意味着说它底层要够大。但是以太坊的所有 ERC-20 Token 的市值总和是不是永远不可能超过 Ethereum 市值总和?也不一定,因为这是个静态价值,你不可能把所有 ERC-20 Token 的价值都偷走。静态总量上有可能是应用层的价值更高,但是对交易流一定是底层提供了足够多的价值担保。所以底层的价值大于应用层,是有道理的。

Echo:所以捕获价值能力的核心是不是就在于最大份额的抵押品是放在哪里的?

Louis:是的,我的观点其实是就是说我们在有区块链之前,做交易都是靠信任,或者抽象点说叫社会资本,因为信任是社会资本的一种,我们实际是靠社会资本来达成交易。整个人类文明都是建立在这一基础之上。

但是社会资本有个缺陷,就是那个尼克萨博说的 Social Scalability 的问题。互联网已经让世界上任何人之间做生意变为可能,唯一的限制是社会资本。区块链发明了一种方式,用物质资本来代替社会资本,也就是说只要我们能够达成共识,某一个 Token 是值钱的,那这个 Token 并不需要去花劳动力去生产出来。比如不管是 NEAR 还是 SOL 还是 BSC,这些价值是我们想象出来的。当价值达成共识之后,它就可以作为抵押品来让我跟世界上另外一端不认识人做生意,那这就解决了社会资本不能 scale 的问题。

Echo:对,我觉得从抵押品的视角来看,这个答案确实是很本质。非常感谢刘老师来分享自己的观点。

免责声明:本文仅供参考,不得被用作法律、税务、投资、理财或任何其他建议。