以太坊是一个无需许可的世界计算机,在撰写本文时(可以说)拥有最高的经济安全性,是大量资产、应用程序和服务的结算账本。以太坊确实有其局限性—— 区块空间是以太坊第一层(L1)上的稀缺且昂贵的资源。在第二层 (L2) 扩展被视为这个问题的解决方案,近年来有许多项目进入市场,大部分以汇总(Rollup)的形式。然而,汇总,在严格意义上的术语 (意味着汇总数据位于以太坊 L1 上),不允许以太坊无限扩展,每秒最多只允许数千笔交易。
信任最小化 (Trust-minimized) – 如果一个 L2 系统的运行不需要基础 L1 系统之外的信任,那么它(的一个特征)就是信任最小化的。
横向扩展 (Horizontal scaling) —如果可以在不造成全局瓶颈的情况下增加实例,系统就是可横向扩展的。
在本文中,我们认为信任最小化和水平可扩展的系统是扩展区块链应用程序最有前途的方式,但目前尚未得到充分探索。我们通过探讨三个问题来提出论点:
(声明:尽管我们在本文中将以太坊作为基础 L1,但我们在此讨论的大部分内容都适用于以太坊之外的去中心化结算层)。
应用程序可以用受信任的方式连接到以太坊—它们可以写入以太坊区块链,也可以从以太坊区块链读取数据,但操作员必须正确执行业务逻辑。像 Binance 和 Coinbase 这样的集中式交易所就是可信应用程序的典范。与以太坊连接意味着应用程序可以利用全球结算网络的各种资产。
可信链外服务存在重大风险。 2022 年主要交易所和服务崩溃,例如FTX 和Celsius,是一个很好的警示故事,讲述了当受信任的服务行为不当和失败时会发生什么。
另一方面,信任最小化的应用程序可以写入和读取以太坊可验证地。示例包括 Uniswap 等智能合约应用程序、Arbitrum 或 zkSync 等汇总以及 Lagrange 和 Axiom 等协处理器。从广义上讲,随着应用程序受到以太坊网络的保护,并且更多功能(见下文)被外包给 L1,信任就会被消除。因此,可以在没有交易对手或托管人风险的情况下提供信任最小化的金融服务。
应用程序和服务可以具有三个关键属性,这些属性可以将其外包给 L1:
对于上述每种属性,我们都可以思考需要什么样的信任假设;特别是,Eth L1 是否提供了该属性,还是需要外部信任。下表针对不同的架构范例对此进行了分类。
水平扩展指的是通过添加系统的独立或并行实例来进行扩展,例如应用程序或汇总。这要求不存在全局瓶颈。横向扩展可实现并促进指数级增长。
垂直扩展是指通过提高单片系统(如以太网 L1 或数据可用层)的吞吐量来进行扩展。当水平扩展在此类共享资源上遇到瓶颈时,往往需要进行垂直扩展。
说法 1:(交易数据)汇总无法水平扩展,因为它们可能会受到数据可用性(DA)的瓶颈制约。垂直扩展的数据可用性解决方案需要在去中心化方面做出妥协。
数据可用性(DA)仍然是卷积的瓶颈。目前,每个 L1 块的最大目标大小为 ~1 MB(85 KB/s)。有了 EIP-4844,(从长远来看)可用数据将增加约 2 MB(171 KB/s)。通过 Danksharding,Eth L1 最终可支持高达 1.3 MB/s 的 DA 带宽。Eth L1 DA 是一种共享资源,许多应用和服务都在争夺这种资源。因此,尽管将 L1 用于 DA 可提供最佳安全性,但它会对此类系统的潜在可扩展性造成瓶颈。利用 L1 进行 DA 的系统(通常)无法横向扩展,而且规模不经济。其他 DA 层,如 Celestia 或 EigenDA,也有带宽限制(尽管更大,分别为 6.67 MB/s 和 15 MB/s)。但其代价是将信任假设从以太坊转移到另一个(通常去中心化程度较低)网络,从而影响(经济)安全性。
说法 2:水平扩展信任最小化服务的唯一方法是获得(接近)零边际 L1 数据。目前已知的两种方法是状态差异汇总(SDR)和Validiums。
状态差异汇总 (SDR) 是将一批聚合交易的状态差异发布到以太坊 L1 的汇总。对于 EVM,随着交易批次的增大,发布到 L1 的每个交易数据会减少到一个比交易数据汇总小得多的常数。
例如,在铭文大量涌入的压力测试事件中,zkSync 发现每笔交易的调用数据减少至每笔交易低至 10 个字节。相比之下,Arbitrum、Optimism 和 Polygon zkEVM 等交易数据汇总通常会看到每笔交易大约 100 字节 为正常交通。
Validium 是一种向以太坊发布状态转换有效性证明的系统,不包含相关的交易数据或状态。Validium 具有高度的水平可扩展性,即使在低流量条件下也是如此。由于不同 Validium 的结算可以聚合在一起,这一点就显得尤为重要。
除了水平可扩展性之外,Validium 还可以提供链上隐私(来自公共观察者)。具有私有 DA 的 Validium 具有集中式和门控的数据和状态可用性,这意味着用户必须在访问数据之前对自己进行身份验证,并且运营商可以执行良好的隐私措施。这实现了类似于传统网络或金融服务的用户体验——用户活动不受公众监督,但有一个值得信赖的用户数据托管人,在本例中为 Validium 运营商。
集中式排序器与分散式排序器的区别?为了保持系统的水平可扩展性,实例化独立的排序器(集中式或分散式)至关重要。值得注意的是,虽然使用共享排序器的系统具有原子可组合性,但它们无法水平扩展,因为随着系统数量的增加,排序器会成为瓶颈。
互操作性如何?如果横向可扩展系统都结算到相同的 L1,那么它们就可以互操作,而无需额外的信任,因为信息可以通过共享结算层从一个系统发送到另一个系统。在运行成本和报文延迟之间需要进行权衡(这有可能在应用层解决)。
我们能否在水平可扩展系统中进一步降低对有效性、排序和数据可用性的信任要求?
值得注意的是,我们知道如何以水平可扩展性为代价,挽救无信任的有效性和数据可用性。例如,可以从 L1 启动 L2 交易,以保证包含。Volition 可以为用户提供选择性的 L1 状态可用性。
另一种解决方案是去中心化(但不依赖 L1)。通过利用去中心化排序器(如 Espresso Systems 或 Astria),系统可以变得更加分散,从而最大限度地减少对有效性、排序和数据可用性所需的信任,而不是单一排序器。与单操作员解决方案相比,这样做会带来一些限制:(1)性能可能会受到去中心化系统性能的限制;(2)对于具有私有数据分析功能的验证器来说,如果去中心化排序器网络是无权限的,那么默认的隐私保证就会丧失。
对于单运营商验证或特别提款权,我们还可以最小化多少信任?这里有几个开放的方向。
开放方向 1:Validium 中信任最小化的数据可用性。Plasma 一定程度上解决了状态可用性问题——要么解决了仅针对某些状态模型(包括UTXO状态模型)的提现问题,要么解决了要求用户定期在线的问题(Plasma Free)。
开放方向 2:在特别提款权和有效期内进行负责任的预先确认。这里的目标是为用户提供快速的预先确认,即由排序者确认交易是否包含,如果包含承诺没有兑现,确认应允许用户质疑并削减排序者的经济利益。这里的挑战在于,证明不包含(削减所需的必要条件)可能需要用户提供额外的数据,而排序仪可以简单地扣留这些数据。因此,我们可以合理地假设,我们至少要求 SDR 或 Validium 就其全部 calldata 或交易历史采用一个(可能获得许可的)数据可用性委员会,从而使该委员会能够应用户请求提供(预先确认的交易的)不包含证明。
开放性方向 3:从延迟故障中快速恢复。单人操作系统可能会受到实时性故障的影响(例如,Arbitrum 在铭文事件中离线)。我们能否设计出在这种情况下服务中断最小的系统?从某种意义上说,允许自排序和状态提议的 L2 确实能保证不出现长时间的有效性故障。目前,人们对设计更能抵御短时延迟故障的单操作员系统还缺乏深入研究。其中一个潜在的解决方案是通过提供针对延迟故障的削波,使延迟故障成为一种责任。另一种可能的解决方案是缩短接管前的延迟时间(目前设定为一周左右)。
在保持信任最小化的同时扩展全球结算账本是一个难题。在当今的汇总和数据可用性领域,垂直扩展和水平扩展之间还没有明显的区别。为了真正将信任最小化系统扩展到地球上的每个人,我们需要构建信任最小化和水平可扩展的系统。
非常感谢 Vitalik Buterin 和 Terry Chung 的反馈和讨论,以及 Diana Biggs 的编辑评论。
以太坊是一个无需许可的世界计算机,在撰写本文时(可以说)拥有最高的经济安全性,是大量资产、应用程序和服务的结算账本。以太坊确实有其局限性—— 区块空间是以太坊第一层(L1)上的稀缺且昂贵的资源。在第二层 (L2) 扩展被视为这个问题的解决方案,近年来有许多项目进入市场,大部分以汇总(Rollup)的形式。然而,汇总,在严格意义上的术语 (意味着汇总数据位于以太坊 L1 上),不允许以太坊无限扩展,每秒最多只允许数千笔交易。
信任最小化 (Trust-minimized) – 如果一个 L2 系统的运行不需要基础 L1 系统之外的信任,那么它(的一个特征)就是信任最小化的。
横向扩展 (Horizontal scaling) —如果可以在不造成全局瓶颈的情况下增加实例,系统就是可横向扩展的。
在本文中,我们认为信任最小化和水平可扩展的系统是扩展区块链应用程序最有前途的方式,但目前尚未得到充分探索。我们通过探讨三个问题来提出论点:
(声明:尽管我们在本文中将以太坊作为基础 L1,但我们在此讨论的大部分内容都适用于以太坊之外的去中心化结算层)。
应用程序可以用受信任的方式连接到以太坊—它们可以写入以太坊区块链,也可以从以太坊区块链读取数据,但操作员必须正确执行业务逻辑。像 Binance 和 Coinbase 这样的集中式交易所就是可信应用程序的典范。与以太坊连接意味着应用程序可以利用全球结算网络的各种资产。
可信链外服务存在重大风险。 2022 年主要交易所和服务崩溃,例如FTX 和Celsius,是一个很好的警示故事,讲述了当受信任的服务行为不当和失败时会发生什么。
另一方面,信任最小化的应用程序可以写入和读取以太坊可验证地。示例包括 Uniswap 等智能合约应用程序、Arbitrum 或 zkSync 等汇总以及 Lagrange 和 Axiom 等协处理器。从广义上讲,随着应用程序受到以太坊网络的保护,并且更多功能(见下文)被外包给 L1,信任就会被消除。因此,可以在没有交易对手或托管人风险的情况下提供信任最小化的金融服务。
应用程序和服务可以具有三个关键属性,这些属性可以将其外包给 L1:
对于上述每种属性,我们都可以思考需要什么样的信任假设;特别是,Eth L1 是否提供了该属性,还是需要外部信任。下表针对不同的架构范例对此进行了分类。
水平扩展指的是通过添加系统的独立或并行实例来进行扩展,例如应用程序或汇总。这要求不存在全局瓶颈。横向扩展可实现并促进指数级增长。
垂直扩展是指通过提高单片系统(如以太网 L1 或数据可用层)的吞吐量来进行扩展。当水平扩展在此类共享资源上遇到瓶颈时,往往需要进行垂直扩展。
说法 1:(交易数据)汇总无法水平扩展,因为它们可能会受到数据可用性(DA)的瓶颈制约。垂直扩展的数据可用性解决方案需要在去中心化方面做出妥协。
数据可用性(DA)仍然是卷积的瓶颈。目前,每个 L1 块的最大目标大小为 ~1 MB(85 KB/s)。有了 EIP-4844,(从长远来看)可用数据将增加约 2 MB(171 KB/s)。通过 Danksharding,Eth L1 最终可支持高达 1.3 MB/s 的 DA 带宽。Eth L1 DA 是一种共享资源,许多应用和服务都在争夺这种资源。因此,尽管将 L1 用于 DA 可提供最佳安全性,但它会对此类系统的潜在可扩展性造成瓶颈。利用 L1 进行 DA 的系统(通常)无法横向扩展,而且规模不经济。其他 DA 层,如 Celestia 或 EigenDA,也有带宽限制(尽管更大,分别为 6.67 MB/s 和 15 MB/s)。但其代价是将信任假设从以太坊转移到另一个(通常去中心化程度较低)网络,从而影响(经济)安全性。
说法 2:水平扩展信任最小化服务的唯一方法是获得(接近)零边际 L1 数据。目前已知的两种方法是状态差异汇总(SDR)和Validiums。
状态差异汇总 (SDR) 是将一批聚合交易的状态差异发布到以太坊 L1 的汇总。对于 EVM,随着交易批次的增大,发布到 L1 的每个交易数据会减少到一个比交易数据汇总小得多的常数。
例如,在铭文大量涌入的压力测试事件中,zkSync 发现每笔交易的调用数据减少至每笔交易低至 10 个字节。相比之下,Arbitrum、Optimism 和 Polygon zkEVM 等交易数据汇总通常会看到每笔交易大约 100 字节 为正常交通。
Validium 是一种向以太坊发布状态转换有效性证明的系统,不包含相关的交易数据或状态。Validium 具有高度的水平可扩展性,即使在低流量条件下也是如此。由于不同 Validium 的结算可以聚合在一起,这一点就显得尤为重要。
除了水平可扩展性之外,Validium 还可以提供链上隐私(来自公共观察者)。具有私有 DA 的 Validium 具有集中式和门控的数据和状态可用性,这意味着用户必须在访问数据之前对自己进行身份验证,并且运营商可以执行良好的隐私措施。这实现了类似于传统网络或金融服务的用户体验——用户活动不受公众监督,但有一个值得信赖的用户数据托管人,在本例中为 Validium 运营商。
集中式排序器与分散式排序器的区别?为了保持系统的水平可扩展性,实例化独立的排序器(集中式或分散式)至关重要。值得注意的是,虽然使用共享排序器的系统具有原子可组合性,但它们无法水平扩展,因为随着系统数量的增加,排序器会成为瓶颈。
互操作性如何?如果横向可扩展系统都结算到相同的 L1,那么它们就可以互操作,而无需额外的信任,因为信息可以通过共享结算层从一个系统发送到另一个系统。在运行成本和报文延迟之间需要进行权衡(这有可能在应用层解决)。
我们能否在水平可扩展系统中进一步降低对有效性、排序和数据可用性的信任要求?
值得注意的是,我们知道如何以水平可扩展性为代价,挽救无信任的有效性和数据可用性。例如,可以从 L1 启动 L2 交易,以保证包含。Volition 可以为用户提供选择性的 L1 状态可用性。
另一种解决方案是去中心化(但不依赖 L1)。通过利用去中心化排序器(如 Espresso Systems 或 Astria),系统可以变得更加分散,从而最大限度地减少对有效性、排序和数据可用性所需的信任,而不是单一排序器。与单操作员解决方案相比,这样做会带来一些限制:(1)性能可能会受到去中心化系统性能的限制;(2)对于具有私有数据分析功能的验证器来说,如果去中心化排序器网络是无权限的,那么默认的隐私保证就会丧失。
对于单运营商验证或特别提款权,我们还可以最小化多少信任?这里有几个开放的方向。
开放方向 1:Validium 中信任最小化的数据可用性。Plasma 一定程度上解决了状态可用性问题——要么解决了仅针对某些状态模型(包括UTXO状态模型)的提现问题,要么解决了要求用户定期在线的问题(Plasma Free)。
开放方向 2:在特别提款权和有效期内进行负责任的预先确认。这里的目标是为用户提供快速的预先确认,即由排序者确认交易是否包含,如果包含承诺没有兑现,确认应允许用户质疑并削减排序者的经济利益。这里的挑战在于,证明不包含(削减所需的必要条件)可能需要用户提供额外的数据,而排序仪可以简单地扣留这些数据。因此,我们可以合理地假设,我们至少要求 SDR 或 Validium 就其全部 calldata 或交易历史采用一个(可能获得许可的)数据可用性委员会,从而使该委员会能够应用户请求提供(预先确认的交易的)不包含证明。
开放性方向 3:从延迟故障中快速恢复。单人操作系统可能会受到实时性故障的影响(例如,Arbitrum 在铭文事件中离线)。我们能否设计出在这种情况下服务中断最小的系统?从某种意义上说,允许自排序和状态提议的 L2 确实能保证不出现长时间的有效性故障。目前,人们对设计更能抵御短时延迟故障的单操作员系统还缺乏深入研究。其中一个潜在的解决方案是通过提供针对延迟故障的削波,使延迟故障成为一种责任。另一种可能的解决方案是缩短接管前的延迟时间(目前设定为一周左右)。
在保持信任最小化的同时扩展全球结算账本是一个难题。在当今的汇总和数据可用性领域,垂直扩展和水平扩展之间还没有明显的区别。为了真正将信任最小化系统扩展到地球上的每个人,我们需要构建信任最小化和水平可扩展的系统。
非常感谢 Vitalik Buterin 和 Terry Chung 的反馈和讨论,以及 Diana Biggs 的编辑评论。