原文标题:《为什么「桥」对 Layer 2 很重要?》
撰文:Patrick McCorry,PISA Research 首席执行官
编译:Perry Wang,链闻
从社区角度而言,我们对以链下协议(off-chain protocol)作为区块链网络的扩容方式感到无比兴奋,因为这会让大多数交易从第 1 层区块链移至链下系统,从而避开了 L1 区块链上的网络费用和延迟问题。
我想通过这篇文章来讨论一下有关链下协议 的一些基本知识,让大家更好的了解目前的「桥」和这些桥链接的二层(L2)技术的关系。
什么是「桥」?
回答这个问题前,我们应该谈谈「桥」这个经常被忽略、但对评估 资金安全性 至关重要的基本组成部件:
桥(bridge)负责将资产保存在 L1 区块链上,而相同的资产则在另一(主要指外部)服务上发布。桥定义了谁来 保管资金 ,以及在资产在解锁之前必须满足的条件。
简而言之,每当像以太坊这样的 L1 区块链连接到任何其他系统时,都会使用桥。所有桥都有类似的动作:
- 存入资产 。用户可以向桥存入资产,桥会给予在其它系统中代表这一资产的证明;
- 更新账户余额 。有关新帐户余额的信息将通知桥,这可用于辅助提款过程。
- 资产提取 。用户凭借在其它系统中的余额,以及在其它系统中销毁的所发行代币,可以从桥提取资产。
最常见的桥(人们在毫无觉察的情况下使用) 是单一组织形态:
多数加密货币交易所(或许是全部)提供单一组织形态桥接服务
如果我们仅考虑桥而不是其他任何东西,可以说 中心化加密货币交易所是一个链下协议 。用户可以将资金锁定到中心化交易所的服务中,进行交易时绕过网络费用和延迟,并最终可以将其资金提取回 L1 区块链。
除这种单一组织形态的桥接之外,还存在另外两种依赖一组托管人的桥:
- 多组织桥 。固定数量的一组独立个体(N 中的 K 个代表)保管被锁定的资金。
- 加密经济形态的桥 。动态数量的个体保管被锁定的资产,具体数量由其资产权重决定。
一个重要的洞察是,L1 区块链上的所有以上三种桥都 无法验证 来自另一个系统的账户余额是否正确(或者,如果在另一个系统中的负债超过了桥接中的资产)。于是,将由一组 托管人 确定是否 所有提款 请求都根据另一个系统中的资产情况进行处理,他们最终决定了资金是否可以解锁,以及该由谁接收。
侧链和桥独立于任何区块链网络
在上文中,我们主要讨论考虑了采用诸如加密货币交易所之类的托管服务桥。桥越来越流行的一个用例是将 一个区块链连接到另一个区块链 (顺便说一下,这是「侧链 sidechain」这一术语的起源)。
侧链和桥接的安全独立于任何区块链网络
还存在多个桥接的范例:
- WBTC :一个单一组织形态的桥接,将 BTC 资产连接以太坊网络中。
- Liquid 网络 或 RSK :一个多组织桥接,拥有硬件安全模块(HSM )的多方联盟,将 BTC 资产锁定/解锁资金到另一个区块链。
- Polygon 桥 :一个加密经济形态的桥接,其中桥中锁定资产中的 2/3 + 1 定期就 Polygon 中所有用户的帐户余额达成协议,用户可以使用该协议在以太坊上提取资金(实际上, Polygon 最终将由小的多签合约控制的,但是这一示例主要聚焦于长期目标)。
- Rainbow 桥 :一个加密经济形态的桥接,其桥接合约是一个轻客户端,可以验证其他区块链的进度。它不检查另一个区块链的有效性,资金的安全性最终取决于另一个区块链的持续发展(通过加密经济学来保障)。
至关重要的是,每个桥都有自己的 安全模型 ,并且不与任何区块链网络绑定。
我们可以举一个简单的案例 WBTC 来做进一步阐述: BitGo Trust 托管着锁定在比特币区块链中的资金,他们负责在以太坊上发行相同数量的 WBTC。以太坊上的智能合约会跟踪 WBTC 所有转账的账户余额。BitGo 是守信方,管理着智能合约中记录的帐户余额。
WBTC 一例中有几个方面需要考虑:
- 单一托管人 。WBTC 的桥依赖于单一托管人来保证其完整性。他们理论上可以在以太坊上发行比所锁定比特币更多的 WBTC,并且他们可以决定不兑现将 WBTC 提取为 BTC 的行为。
- 独立安全模式 。以太坊拥有自己的、独立于比特币区块链的安全模型。桥又有自己的安全模型,该模型独立于上述两个区块链网络。
- 以太坊是侧链 。相对比特币区块链而言,交易已转移至链下,从比特币区块链转移至以太坊。
以上提到的三种桥的共同点是它们不检查侧链信息的 诚信 ,而且如果托管人(或侧链)下线,则没有自我执行的 应急计划 来保护资金。他们只是受制于自己的安全模型,而不是桥所在的 L1 区块链中的安全机制。
L2 协议跟本文有什么关系?
L2 可扩容性旨在将交易吞吐量从 L1 区块链移动到另一个链下系统,需要桥来保存在其他系统上发行的资产。
但是,与本文探讨的所有其他桥类型不同,L2 协议致力于以与 L2 区块链相同的安全机制来保护资金,并且它不能依赖一组保管人(或其他链下系统)保护资金。
它需要一种新型的桥:
- L2 桥 。L1区块链拥有资金的保管权,而桥接必须相信 L2 协议的信息诚信不会被破坏。在最坏的情况下,桥将自动增强 L2 协议的活跃度,直到所有资金都可以提取。
L2 桥是所有桥接中最强大的桥,它不依靠一组保管人来保护资金。取而代之的是,在释放资金之前,必须得让桥确信:链下系统一切都很好。如果出于某种原因,桥确信链下系统受到威胁,则该网只需要完全绕道另一个网络。
有几家公司专注于打造 L2 桥,自然也会构建全新的区块链网络
这就是 L2 协议 如此令人兴奋的原因,上述这些团队花了几年时间才提出解决方案。市场中率先出现的使用 L2 协议的竞争者主要集中在如何实现安全的 L2 桥上(而不一定要部署其他区块链网络)。
这是进一步探讨技术问题和定义的好机会。我们明确表示:必须确保桥不会破坏 L2 协议,并且 L2 数据诚信被破坏的行为可以分为四个问题:
- 数据可用性 。桥接如何确信另一个区块链网络的所有数据都是公开可用的,以便用户可以独立地重新计算 L2 数据库?
- 状态变化的诚信度 。我们如何使桥接相信 L2 网络的所有状态转换都是格式正确且有效?
- 提款的诚信度 。如果 L2 网络受到威胁,该桥接如何保证所有诚实用户的资金都能被提取?
- 协议活跃性 。桥如何保证在 L2 协议停止或下线时仍可以执行交易?
当然,以上问题必须得到解决,同时桥接合约具备的计算资源明显少于链下系统,因此桥接无法地还原地实时重新执行所有交易。否则,它不就是可扩容解决方案。
解决以上问题可以让我们陷入 兔子洞困境 。具体包括 链上挑战 、 欺诈证明 、 有效性证明 、将交易数据发布到 L1 区块链(rollups)和链上世界。
尽管我们的文章没有重点介绍各种解决方案,但我们强调所有解决方案都不相同。一些即将部署的 L2 协议将无法满足上述安全目标。由于缺少 L2 桥,因此它们不能被称为 L2 协议。
正如本文所探讨的情况,共有四种桥可以实现将资金锁定在区块链中,同时相同的资产在另一链下系统(还可能是另一条区块链)被代表。
托管桥 。上文最先提出的三类桥关注的是哪一组 托管人控制了锁定的资金 。托管人的作用是在允许从桥中提取任何资产之前,先验证链下系统是否正确。假设前提是:链下系统的诚信度是客户一侧的问题,并且托管人有足够的计算资源来处理它。尽管有工作来减轻托管人的作用,并引入加密经济激励措施以鼓励保管人遵循协议,但该桥接协议 无法完全约束保管人 。曾经发生过几例桥接丢失用户资金(例如 Mt. Gox)的事件,这是因为这种桥的诚信度最终取决于对人的信任。
L2 桥 。L2 桥接取代了 托管人 的角色,它们负责保管资金并检查链下系统的 诚信度 。问题的核心是,这类桥接系统必须确信链下系统不会受到破坏,同时它缺乏独立检查每个交易的 计算资源 (否则它就不是可扩容解决方案)。除了所带来的高难度技术挑战外,它也不是免费的。要使 L1 区块链确信链下系统确实结构完善、且其诚信丝毫未受到破坏,则存在持续的财务成本。但是,最终将是由桥保管资金,而不是链下系统运营者。
总体而言,对于用户是否真的在乎 L2 桥以及我们是否应将以太坊的安全模式扩展到链下系统上,尚无定论。
就像生活中的所有事物一样,我怀疑所有四类桥 都将继续存在 ,因为它们对于在用户中推广都是不可或缺的。
我唯一的要求是:您(用户)要以谨慎的态度考察您喜欢的协议所使用的桥的类型。重要的是:要更好地了解您的资金如何免受不良分子的染指。
感谢 Hasu 和Chris Buckland。
原文链接