这篇文章深入探讨了以太坊在区块链中如何通过新型结构PBS(Proposal-Builder Separation)来应对中心化风险和最大化MEV(最大化可提取价值)的问题。通过介绍MEV-Boost机制,在不增加验证者负担的情况下集中区块构建,同时研究了潜在的解决方案,例如FOCIL和多重并发提议者,文章提出了多种增强以太坊抗审查能力的策略,强调应对集中化带来的风险。
感谢 Julian Ma 对本文章的审阅。
以太坊采用PBS结构来减轻MEV利润的中心化风险。在这套系统中,区块提议者(常规验证节点)将区块构建委托给专业的构建者,他们优化交易排序以最大化MEV提取。提议者随后选择并签名收益最高的区块,然后将其广播到网络。
MEV-Boost是一种链外区块拍卖机制,今天在以太坊中广泛使用以促进这一过程。MEV-Boost允许专业的构建者向提议者提交竞标,竞争以将其区块纳入。尽管以太坊的验证者集保持高度去中心化,但构建一个区块——特别是一个针对MEV优化的区块——是复杂且资源密集的。考虑到这一高计算和基础设施负担,集中区块构建并保持区块验证去中心化更为高效。
这是PBS的核心原则:通过每个区块发生的拍卖,公平地将一部分MEV利润分配给验证者,同时确保普通验证者(包括家庭质押者)不必承担区块构建的复杂性。通过将这个专业角色孤立,PBS在优化区块生产效率的同时保持了以太坊网络作为一个整体的去中心化。
然而,由于成功的构建者需要大量资源和特权交易流,只有少数构建者能够持续赢得拍卖。一些构建者通过与特定钱包、dApps和订单流提供者建立独家协议来维持主导地位,确保访问高MEV交易,从而在区块拍卖中获得竞争优势。因此,构建者之间的竞争随着时间的推移而减弱,导致了寡头垄断结构。
目前,大约90%的以太坊区块是通过MEV-Boost构建的,只有两个实体——Beaverbuild和Titan Builder——构建了95%的这些区块。这种集中引发了人们对审查抵抗、交易公平性和以太坊区块生产长期去中心化的关注。
(MEV-Boost插槽份额 | 来源: MEV-Boost图)
尽管这些构建者的干扰或恶意行为并不会显著影响以太坊网络的安全性,但它们对审查抵抗构成了严重威胁。如果所有MEV-Boost构建者决定审查来自特定用户的交易,那么这些用户将只能通过不使用MEV-Boost的验证者生成的区块发送交易,约占总量的10%。因此,处理这些交易需要平均10个区块的时间(大约2分钟)。
这种情况引发了两个主要问题:
纳入列表是一种审查抵抗解决方案,确保某些交易被包含在区块中。它的实施方式通常如下:
这是一个简单的思维模型:在构建区块之前,提议者发送一个包含“纳入列表”的订单,指出“请在区块中包含这些交易。”构建者必须在他们创建的区块中包含这些交易,如果构建的区块没有包含纳入列表中的交易,则被视为无效。
对于PBS之前的以太坊,存储交易的内存池是被视为以太坊一个非共识组件,因此,从以太坊共识层的角度来看,并不知道包含在区块中的交易来自哪里。
MEV导致审查的一个主要原因是内存池是非共识组件,因此构建区块的构建者对审查或包含哪些交易拥有完全的权力。
纳入列表引入了一种机制,利用多个验证者在共识层上充当“链上内存池”。通过这种方式,共识层充分限制了构建者选择交易的权力,以提供审查抵抗。
实施纳入列表的最显著的提案之一是 EIP-7547,即前向纳入列表。该提案允许提议者在纳入列表中包含最多16个交易。"转发"机制确保了为区块N提出的纳入列表适用于区块N+1。
该提案最初计划成为以太坊Pectra升级的一部分,但最终被排除,理由之一是转发机制与 EIP-3074之间的兼容性问题。
EIP-3074引入了一种形式的本地账户抽象,使用一种称为AUTHCALL的操作码,允许一个账户调整多个EOA(外部拥有账户)的余额。这一机制可能会轻易破坏纳入列表。
例如,假设Alice在纳入列表中包含一笔交易(A),其中她的EOA向Bob发送ETH。同时,她使用EIP-3074的AUTHCALL创建另一笔交易(B),将她的EOA的所有余额转移到另一个账户。假设交易B被包含在区块N中,而交易A被包含在区块N+1的纳入列表中。
关键问题在于:当提议者创建纳入列表时,他们并不知道构建者将在当前区块中包含哪些交易。在这种情况下,区块N中的交易B使得交易A无效。因此,区块N+1的构建者将无法因纳入列表中的交易A无效而构建有效的区块。
尝试通过在纳入列表中增设附加约束来解决这一问题。然而,核心问题仍然存在:EIP-3074固有地允许操控其他EOA中的余额。简单的检查,如验证“来自”地址,无法检测到纳入列表交易与其他交易之间的干预。这被称为自由数据可用性问题,在文章 '没有免费的午餐 - 一种新的纳入列表设计'中提到。
尽管EIP-3074被排除在Pectra升级之外,但类似功能的EIP-7702已被纳入。因此,在EIP-7547能够在以太坊主网上实施之前,需要解决这些问题。
此外,EIP-7547还面临额外挑战,例如每个区块只能由一个提议者创建纳入列表的限制。这些因素使得很难将EIP-7547直接应用于以太坊主网。因此,EIP-7547被从Pectra升级中排除。
这些问题没有解决方案吗?最近,有一种名为FOCIL(Fork-choice enforced Inclusion Lists)的解决方案在以太坊生态系统中引起了广泛关注,并被认为是最有可能实施于以太坊主网的解决方案之一。作为 EIP-7805提出,FOCIL引入了一种机制,不仅由一个,而是多个实体提出纳入列表。其细节和特征如下:
FOCIL的核心采用了纳入列表的概念,意味着某人创建一份必须包含在每个区块中的交易列表,并要求提议者将其纳入。然而,FOCIL与EIP-7547有两个显著的不同之处:
为区块N构建纳入列表的过程在区块N-1的插槽开始时开始。随机选择的16名验证者组成的IL委员会接收区块N-1,将其设为他们的头部,构建各自的纳入列表,并通过点对点传播这些列表。
构建过程在12秒N-1插槽开始后的9秒结束,此后委员会无法再向列表添加内容。在通过P2P网络接收了这些列表后,区块N的构建者在构建该区块时,必须将它们包括在内。在N插槽开始后的不久,区块将被传递给提议者。
验证区块N的验证者将之前接收的纳入列表中的交易与包含在区块N中的交易进行比较,以确保合规。
(FOCIL架构 | 来源: EIP-7805)
与之前提出的EIP-7547相比,FOCIL提供了以下优势:
这种区块与纳入列表的同时构建确保与以前提议的账户抽象机制(如EIP-3074或EIP-7702)兼容。先前的区块无法使纳入列表中的交易无效。
构建者在最终完成区块构建之前会先接收到IL,使他们能够排除任何会导致IL无效的交易。这个过程很简单:构建者记录所有在IL中的EOA的nonce和余额,并在发生变化时更新这些值。这个简单的方法允许构建者验证IL交易的有效性,并成功完成区块构建。
FOCIL每个区块允许最多16个纳入列表,每个列表的最大尺寸限制为8KB(8192字节)。如果16个纳入列表中提议的交易没有重叠,单个区块中IL交易的最大尺寸可以达到128KB。这个限制旨在减少验证者在P2P网络中传播纳入列表时的资源使用。
那么,在FOCIL下,使用IL构建以太坊区块的具体数量是多少?历史上,以太坊区块的平均大小大约在80KB到100KB之间,最大约为300KB。如果16个纳入列表中提议的交易没有重叠,理论上可以仅使用IL交易构建整个以太坊区块。
然而,这种情况不太可能。由于纳入列表中的交易通常来自公共内存池,因此事务重叠的几率很高,除非16个IL委员会成员使用完全不同的配置。
总之,FOCIL中的纳入列表交易预计将在以太坊区块中占据6% - 10%的比重,最大可达到100%,如果IL委员会成员查看的是相同的公共内存池,则更倾向于接近6-10%的范围。
FOCIL成为领先解决方案的一个原因是它与如执行票证等证明者-提议者分离(APS)提案的潜在协同效应。什么是APS,它如何与FOCIL互补?
APS提案将区块的提议者和验证者角色分开。
(验签者-提议者分离 | 来源: 哥伦比亚加密经济学工作会议)
在以太坊中,基于PBS的区块构建将提议者与构建者的角色分开。提议者提出区块而构建者构建区块内容。这防止了由提议者-构建者联盟形成的集中质押池垄断MEV利润,记录出比常规验证者高得多的年利率,这可能会导致验证者操作的中心化。
这一问题通过MEV-Boost进行了处理,并提议在协议中建立中继系统(ePBS)以解决余下的中心化问题。然而,PBS真的是最佳结构吗?
以太坊共识层的一个关键角色是分配奖励和对验证者施加惩罚。如果这个过程变得中心化,则链会受到中心化实体的影响,无论验证者的投票是什么。因此,共识层应保持高度去中心化。
然而,执行层没有相同的限制。MEV提取和交易排序等任务本质上复杂且具有策略性,需采用中心化实体。如果将这些任务强加于所有验证者,则链会朝向中心化发展。
在这方面,以太坊的哲学是“共识参与者不应该被激励去追求复杂任务以谋取个人利益”。
通过PBS,以太坊将验证者与MEV参与者(构建者、搜索者)分开,以在网络中均匀分配MEV利润。
尽管如此,提议者仍然可以使用非常规策略来获得额外收益:
构建者已经集中,但提议者也表现出某种集中。例如,Coinbase持有大约10%的总质押ETH。如果Coinbase与特定构建者串通,仅接受其区块,这将引入一个重要的中心化向量进入生态系统。
以太坊相对较长的12秒区块时间引入了一种有趣的动态,称为时机游戏,提议者延迟区块的发布,以最大化MEV利润。
区块中可用的MEV通常随时间线性增加。提议者可以延迟区块的传播,以最大化他们的MEV,仅在他们面临下一个提议者拒绝的风险前不久公布。
(出价金额与区块接收时间 | 来源: 时间就是金钱:权益证明协议中的战略时机游戏)
那么,在一个插槽(12秒)内,提议者可以延迟区块发布多长时间?根据以太坊的协议规范,为了使下一个提议者认为该区块有效,区块必须收到来自40%分配到上一个插槽委员会的验证者(验签者)的投票。
在当前的以太坊主网,接收到40%验证者投票的时点发生在插槽的约3.8秒处。
(第一次发现的验签时间分布 | 来源: 关于提议者时机游戏和规模经济)
试图玩时机游戏的提议者将采取一项最大限度延迟区块发布时间的策略,等待直到收到足够的投票(40%或更多),以避免被下一个提议者拒绝。
然而,结果并不总是符合提议者的意图。如果区块未能获得40%的投票,下一个提议者将会拒绝该区块。在这种情况下,投票拒绝区块的验证者将为一个未构成规范链的区块所投票,造成削减惩罚。
如果这种情况持续,验证者可能会延迟投票,以观察网络状态并确保自己的投票是准确的。这种行为会增加链上重组的数量。
总之,提议者的时机游戏可能对以太坊的共识结果产生负面影响,必须加以防止。
APS是为解决该问题而设计的解决方案。APS提议为执行层创建一个单独的提议者,完全将共识层与MEV分开。
例如,一个代表性的APS提案,执行票证,引入了一个“执行提议者”,不同于信标链提议者。在该系统中,协议生成并出售执行票证,使持有者有权在每个区块中被随机选择为执行提议者。这些执行提议者将承担目前在MEV-Boost中由信标链提议者执行的部分角色,接收执行有效载荷并提议。
该设计的基本理念是,执行提议者的中心化并不是问题;实际上,将其与共识层分开会提升整体系统的表现。
那么,在APS下,信标链提议者将处理哪些任务?
除了管理验证者的存款、奖励和惩罚(信标链内的状态转换)之外,APS中共识层提议者还有一个额外的重要角色:构建纳入列表并将其传递给执行层。
更理想的是,纳入列表应依赖于共识层去中心化的验证者集,而不是相对更中心化的执行提议者。这有助于降低审查攻击者与提议者串通以审查交易的可能性。
因此,像执行票证这样的APS提案建议了一种机制,使共识层验证者作为信标区块的一部分构建纳入列表。这些列表随后作为执行提议者构建和提议完整区块的基础。
(执行票证中的插槽构建 | 来源: 执行票证)
总之,基于纳入列表的审查抵抗解决方案与以太坊对APS的愿景完全一致。因此,FOCIL被认为是最有前途的审查抵抗解决方案之一。
FOCIL通过限制每个IL为8KB以及有16名验证者的IL委员会,在保持网络资源使用在合理水平的同时,确保有效的审查抵抗。
下图展示了根据IL委员会中诚实验证者的比例,交易被纳入链中所需的时间。即使委员会中只有15%的验证者不进行审查,交易仍然能够立即被纳入。这表明,小型由16名验证者组成的委员会能够实现高效的审查抵抗。
(诚实验证者数量与纳入所需的预计插槽 | 来源: soispoke X)
是否可以允许多个参与者共同提议整个区块?这一概念被称为“多个并发提议者”。与单一实体一次提议一个区块不同,多个实体同时拟定同一个插槽的区块。
在某些条件下,采用这样的解决方案可以显著增加审查的成本。以太坊有一种机制,在每个周期中,32个区块的提议者同时被披露。这种设置使得某人在此场景中可以试图“贿赂”提议者以审查特定交易。然而,如果区块并不是由一个人而是由N个提议者同时提议呢?在这种情况下,采用类似条件小费的机制使N个提议者之间引入一种“囚徒困境”,从而显著增加审查的成本。
例如,假设N个提议者负责创建一个区块,Alice请求他们包含她的交易,而Bob则试图审查Alice的交易。Alice可以向提议者提供贿赂以包含她的交易,同时Bob也可以向他们贿赂以审查。在这种情况下,Alice可以采取使Bob审查的成本增加的贿赂策略,具体如下:
在这种情况下,提议者陷入了类似“囚徒困境”的局面。每个提议者在这个游戏中的最佳策略是包含交易而不是审查交易。为了Bob成功审查Alice的交易,他需要贿赂所有N个提议者,成本为NT。而Alice只需花费最多Nt来确保她的交易被纳入。这显著增加了审查的成本。
这一概念可以在PBS的基础上通过多种方式实现。例如,多个提议者可以同时构建区块,或者多个构建者可以同步构建区块。
本节引入了在PBS结构内实现此目的的两种机制:
(BRAID架构 | 来源: BRAID在Devcon)
BRAID是由Max Resnick提出的一种以太坊审查抵抗解决方案,他是特别机制小组的一员。
该机制基于一个简单而强大的概念:与以太坊现在运行单个链相反,k条同步的LMD-GHOST链将并行运行。换句话说,BRAID允许k个提议者同时为每个插槽产生自己的区块。
一个显而易见的问题出现了:这k个区块是如何被处理的?因为这些区块最终必须被整合为一个,才能维持单个区块链,BRAID使用预定义的排序规则来合并它们。
例如,通过移除重复项并按费用的降序对交易进行排序,可以合并区块。最终确定的区块将包含整合后的按序排序的交易。
BRAID提供了一些优势:
通过使多个提议者并发工作,BRAID显著增加了审查的成本,因为需要贿赂多个实体。
该机制显式定义了交易排序,使其适合应用于对交易顺序敏感的实时链上拍卖。
注意,这并不总是优势,因为它会阻止某些应用实施其特定的排序规则。
然而,BRAID也有一个局限性。由于所有k条链必须保持同步,验证者需要额外的网络资源。这与以太坊降低验证者要求的目标相悖。
BuilderNet是Flashbots提出的一种解决方案,通过允许多个实体同时作为区块构建者来提高审查抵抗能力。
BuilderNet的初始版本实施了多运营商模型,其中多个实体在不同的监管指导下运营一个单独的构建者。这确保了与单一运营商构建者相比,提高了审查的抵抗能力。BuilderNet代表了构建多个并发构建者解决方案的一步。
BuilderNet的首次发布由Flashbots、Beaverbuild和Nethermind共同运营,未来计划引入更多构建者。
当前的多运营商模型在外部观察者看来仍呈现为一个单一构建者,限制了其能够实现的审查抵抗的级别。BuilderNet未来发布的版本旨在进一步去中心化其网络,并通过以下变化增强审查抵抗能力:
BuilderNet的未来版本将去中心化区块构建过程,允许一个构建者拾起另一个构建者审查的交易。理论上,只要至少存在一个没有审查的构建者,所有用户交易仍然可以被包含在区块中。这种做法预计将使BuilderNet演变为真正的多个并发构建者模型。
当前版本的BuilderNet依赖于中心化基础设施来实现交易入口和数据存储,且参与需获许可。未来版本的目标是通过使BuilderNet无许可来解决这一点。
BuilderNet还通过利用可信执行环境(TEE)为应用程序、钱包、搜索者和用户创造了更友好的环境。
TEE确保软件根据对硬件的信任表现出预期的行为,防止构建者任意省略数据或修改代码。通过使用BuilderNet,搜索者在向构建者发送束时可以获得更高的保证,因为TEE强制执行对参与区块构建的搜索者的奖励分配逻辑。如果奖励分配逻辑公平,这将为搜索者提供与构建者之间正式合同类似的经济保证。
除了搜索者外,旨在捕获MEV的应用程序和钱包也可以从BuilderNet的架构中受益。
BuilderNet的一个显著特点是其在Layer 2解决方案中的潜在适用性。
以太坊Layer 2正在积极开发证明系统和去中心化验证者架构,以继承以太坊的安全性。尽管这些系统确保用户资金在桥接中的安全,但并没有继承以太坊的审查抵抗能力。
L1到L2交易的强制交易机制目前最多需要12-24小时(具体取决于设计)将交易纳入L2,这未能提供实时审查抵抗。
通过将区块构建外包给BuilderNet,Layer 2能够实现比单一排序器更高的审查抵抗,同时通过使用TEE进行强制交易排序,实现MEV的再分配,类似于Unichain这样的架构。
理想情况下,区块链应该抵抗审查,以太坊社区已提出多种解决方案以应对构建中心化造成的审查抵抗问题。其中一种最有前景的解决方案是FOCIL,其中16名验证者为每个区块提出纳入列表,提供高效的审查抵抗并与APS兼容。FOCIL预计将被讨论,以纳入定于2025年末或2026年初的Fusaka升级。
与此同时,Flashbots主导的多个并发构建者模型的讨论仍在进行中。去中心化构建者将显著改善以太坊的审查抵抗能力,这一措施也可以独立于以太坊核心开发实施,从而加快采用速度。
通过这些举措,以太坊正在稳步向可信中立的执行层迈进,确保没有单一实体对交易纳入持有不当影响。通过将FOCIL的验证者驱动的纳入列表与对区块构建者潜在去中心化的结合,以太坊可以增强其抵御审查的能力,同时保持MEV分配的效率和公平性。随着这些解决方案的发展,网络继续坚持去中心化、无许可访问与中立的核心原则,确保以太坊在未来依然是一个强大且抗审查的结算层。
关注@2077Research以获取更多研究文章,并访问网站深入探讨以太坊研发主题。
- 原文链接: research.2077.xyz/future...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!