互操作链的机会
译文。
如今,区块链互操作性几乎不存在。
想要跨链转移价值,你必须将代币转移到中心化交易所,然后在交易所的内部账上进行交易,最后将新资产提现到新链上。这一过程缓慢、成本高昂,且涉及大量交易对手风险。
从根本上说,有两种类型的链互操作性:
- 将一条链的状态信息传递( Relaying )给另一条链。这包括合成代币(synthetic tokens)( AKA one-to-one pegs, two-way pegs 或侧链)。
- 跨链原子互换(Cross-chain atomic swaps)。在不需要信任第三方的情况下,跨链用户之间进行代币交换( The exchange of tokens between users across chains )。
许多备受瞩目的项目,如 Polkadot 和 Cosmos ,都在竞相成为 the meta “blockchain of blockchains” 。这些系统中的每一个都有一个原生 staking 代币,验证者必须stake 该代币才能为各自网络执行工作。
另一种 chain of chains ,Block Collider,提出一个完全不同的技术机制,可实现许多相同功能。
关于链互操作性,Vitalik Buterin 有一篇优秀论文,基于从中获得的见解,我将介绍上述两个功能,并将强调这些系统的最大机会是信息传递( message relaying )。跨链原子互换可以在没有 dedicated chain of chain systems 的情况下,非信地完成。
跨链信息传递( Cross-Chain Messaging )
跨链信息传递,本质上是一个信任问题:如何设计一个系统,来非信地在链间传递信息( to trustlessly relay messages between chains )?
考虑到我将要谈到的孤链风险,这尤其困难:如果一项服务将 A 链的状态传递到 B 链,但发现,relayer 位于 A 链分叉上,这个分叉最终成为孤链,不管分叉是善意的还是恶意的,导致传递给 B 链的信息是无效的。
如果有人传递信息以生成跨链合成代币( If one is relaying messages to issue synthetic tokens across chains ),将导致跨链双重支付,跨链双重支付是不可接受的。在消息传递系统中,适应无休止的“如果 relayer 处于孤立分叉上,会怎么样”的风险,是迄今为止最大挑战。
Cosmos 和 Polkadot 通过两种机制来解决孤链问题。首先,使用区块链间通信(inter-blockchain communication,IBC )协议,它们为每个跨链交易存储 Merkle 化区块头。基于 Merkle 化区块头的历史,Cosmos/Polkadot 维护每个代币总供应的全球不变余额( global invariant balances ) 。这些机制共同防止了跨链双重支付。
如果 Oraclize 这样的系统能够链间传递信息,那就太好了。但这类系统并不能解决(don’t account for )孤链问题。
如果我们展望未来,就有可能设想到这样一个时刻:孤链问题由发送链本身解决。怎么实现呢?通过利用基于 PoS 的系统的 finality 。这就是 Casper FFG 的明确目的。然而,考虑到参数化这这样一种 PoS 系统时所进行的权衡,还不清楚 finality 能有多快。
即使有了 finality 保证,仍然存在其他挑战。
我们目前正在见证区块链创新的寒武纪爆发。这种情况至少很可能在未来几年继续下去。考虑到正在出现的新链的数量,每条链都将需要存储并验证与之通信的每条其他链的 merkle 化区块头。
每条区块链都可能因为充满其他链的区块头而膨胀。使用桥链( bridge chain )可以将每个链的膨胀从 n^2 的函数降低到 n 的函数。
虽然我希望看到区块链能够在没有中介链的情况下彼此直接通信,这似乎极不可能。比特币等系统可能永远不会脱离 PoW 共识,永远不会朝向拥有 guaranteed finality 的 PoS 共识迈进,这一事实加剧了这个问题。
如果你计划得足够长远,中介链似乎有可能变得多余,但未来仍不明朗。在可预见的未来(至少几年),Cosmos/Polkadot 将有真正机会成为支持跨链信息传递的网络中枢(backbone )。
跨链原子互换( Cross Chain Atomic Swaps )
近期,第一次跨链原子互换发生在 Litecoin 和 Decred 之间。
这两个链都不支持图灵完备的编程语言。就技术而言,跨链原子互换将在通用智能合约平台之间更容易实现。这些库还需要一到两年的时间才能变得成熟并被广泛采用,但这会实现的。剩下的技术问题不多了。
跨链原子互换的另一个主要挑战是价格发现和订单匹配。这就是像 0x 和 OmiseGo 这样的 DEX 发挥作用的地方。OmiseGo 是完全去中心化的,这意味着订单( order book )是链上的。
在 0x 中,订单由 relayers (中心化实体)承载,relayers 随后将匹配的订单提交给链进行结算。
如果市场最终需求 DEXs 完全去中心化(包括链上订单),那么像 OmiseGo 这样的系统将是跨链原子互换发挥作用的必要条件。然而,考虑到链上订单的内在局限性(结算时间,miner front-running,miner griefing 等),我相信在可预见的未来,0x 模式将会占优。
虽然 0x 目前只在以太坊生态系统内工作,但 0x 路线图包含了跨链支持 ( 它很可能会利用在 Litecoin-Decred 概念证明中为基于 Scrypt 的链而设计的大部分技术 )。0x relayers 将托管( host )用于价格发现的订单簿,并将在链间传递信息,以触发释放每条链上的托管资金。这提供了许多最好的元素——来自去中心化(没有对方风险)和中心化(速度、订单匹配),并拥有最低限度的信任保证 ( 只需相信 relayer 实际上将信息传递给了两条链 )。
链上 DEXs 在理论上是可能的。
然而,考虑到链上 DEXs 所面临的局限性;以及订单流动性,time-to-market 和 go-to-market 优势,对 0x relayer 的最小化信任保证,这些 0x 模式内在网络效应,我认为 0x 模式将占优,几乎不会给基于 Cosmos/Polkadot/Block collider 的 DEXs 留下什么机会。
结论
伴随着 Cosmos 发布的接近,我们将见证一个关于 an internet of blockchains 机遇的巨大炒作周期。像Cosmos 这样的系统解决基本的跨链通信问题,但它不必然是所有跨链通信挑战的答案。
重要的是要认识到,并不是这些系统所能做的任何事情,实际上都需要由一个 chain of chains 来完成。随着加密生态系统的发展,在信任模型、relayers 和解决方案方面,将会有更多的多样性。
*注意:只有当两条链都提供原生托管功能(native escrow function)时,才有可能进行跨链原子互换。这至少需要比特币式的脚本功能。一些链,例如 IOTA 和 sia ,根本不支持链上非信托管,因此不能实现非信跨链原子交换。
**跨链原子互换的最大限制之一是结算时间。根据定义,这些交易的处理速度只能与两条链中较慢的一条的区块时间一样快。Block Collider 的系统允许结算,理论上甚至要比两条链中任何一条的区块时间更快。使跨链互换结算,比两条链中任何一条的区块时间更快,这是一个相当疯狂的想法。考虑到比特币区块有多慢,Block Collider 可能会开辟出一个有趣的利基市场。
特别感谢 Sunny Aggarwal、Matt Luongo、James Prestwich 和 Sina Habibian 对本文的贡献。
原文:https://multicoin.capital/2018/01/27/opportunity-interoperable-chains-chains/
作者:Kyle Samani
编译:Chiu
校对:东林
参与讨论(0)