本文提出了一种名为“密封交易”的机制,旨在解决以太坊中交易面临的MEV(矿工可提取价值)问题。该机制通过加密交易池,并引入“sealed transactions”,允许用户在不信任任何中心化机构的情况下,保护他们的交易免受MEV攻击。文章详细介绍了该机制的工作原理、用户体验、潜在问题以及可能的改进方向。
以太坊缺乏一种无需信任的机制来保护交易(txs)免受 MEV 提取。目前的方法——私有订单流——赋予受信任的参与者对交易供应网络的过度控制权,从而降低了引发 MEV 的交易的去中心化和抗审查性。Shutterized Beacon Chain 提案为了缓解这一问题,使用了加密的 mempool,加密密钥由一组“keypers”提供。加密的交易被包含在一个区块中,然后 keypers 使用门限密码学及时解密交易,以便在随后的区块中最终执行。一个潜在的担忧是该协议依赖 keypers 诚实且始终如一地履行其职责。
最近同样基于门限密码学的提案包括利用提议者承诺的路线图和使用智能账户加密 mempool的替代方法。最近,以 密封执行拍卖 的形式提出了一种简单的密码学策略,该策略依赖参与者自己来加密和解密其数据。构建者为提议执行块的权利进行密封投标。密封投标被整理,然后构建者公开他们的投标,正如证明者所观察到的那样。下一个提议者将公开的投标整理到区块中,并且证明者提供以正确整理为条件的证明。
这篇文章探讨了 密封交易,依赖于密封执行拍卖中开发的原始方法来实现加密的 mempool。它引入了一种新的交易包含路径,用户可以依靠它来无需信任地保护他们的交易免受 MEV 提取。用户广播密封交易,这些交易是由原始交易计算出的密码学哈希和块顶部的费用 f_\text{ToB}fToB 组成的承诺。这些包含在第一个区块中的 commitment struct 中。然后,用户解封他们的原始交易,正如证明者所观察到的那样,这些交易按照 f_\text{ToB}fToB 排序,并包含在下一个区块的块顶部。证明者以正确整理为条件来证明该区块。因此,该机制是“分叉选择强制执行”的,这是 FOCIL,MEV 平滑,MEV 销毁 和 密封执行拍卖 中熟悉的策略。
图 1 概述了密封交易机制。
to
和 value
字段。它们还包含一个密码学哈希。此哈希是从最终将被“解封”和执行的原始交易以及 f_\text{ToB}fToB 一起计算得出的。还提供了要解封的交易的特殊形式的 gasLimit
,该费用会预先全额收取,直接在提交密封交易时收取。它必须涵盖未密封交易消耗的 gas,此后将表示为 gasObligation
。交易者可能希望指定比必要更高的 gasObligation
,以进一步混淆交易的内容。区块 A
中的特定 commitment struct 中。包含在 struct 中的 gas(例如,用于存储密封交易的 gas)以及 gasObligation
从交易者处收取并销毁。优先级费用归 区块 A
的提议者所有。为了确保交易者最终能够支付未能解封其交易的罚款,协议会保留该罚款,例如通过收取和销毁罚款,然后在正确包含时将其退还。commitment struct 最多可容纳 gaslimit g_lgl 的某个比例 g_pgp 的交易。因此,commitment struct 中所有条目的总 gasObligation
必须低于阈值 g_t=g_p \times g_l.gt=gp×gl。区块 B
是下一个要提出的区块,它就会将其解封的交易广播到mempool,从而也揭示了 f_\text{ToB}fToB。此时,节点可能只传播未密封的交易,如果密封承诺中包含的密码哈希与从未密封的交易计算出的哈希匹配,但这取决于计算要求。用户指示 区块 A
作为未密封交易的正确锚点(例如,通过区块哈希)以确保如果 区块 A
被 reorg,则未密封的交易无效。他们可以在未密封的交易中包含优先级费用。区块 B
中包含未密封的交易。区块 B
的提议者根据 f_\text{ToB}fToB 对正确未密封的交易进行块顶排序,并且 f_\text{ToB}fToB 被销毁。优先级费用可以用作排序的决胜局,并且在任何一种情况下,交易哈希都可以用作最终的决胜局。对于正确未密封的交易,将退还保留的罚款金额。为了便于核算,提议者 可以 指示缺少未密封的交易,并参考相应的密封交易,尽管这在其他方面是从 区块 A
推断出来的。如果 区块 B
未能扩展区块链,则未密封的交易将改为安排在下一个区块中。图 1. 密封交易机制。带有相关 gas 费用的密封交易被广播并在 区块 A
中整理。然后,它们由交易者自己解封,正如证明者所观察到的那样,并且按照 f_\text{ToB}fToB 排序,并包含在 区块 B
的块顶部。最后,证明者以正确整理为条件进行证明。
一个担忧是希望利用无需信任机制的交易者需要更高的复杂性。不运行节点的用户必须依靠他们的钱包从 Infura 或 Alchemy 等提供商处获取数据。例如,钱包可以发出类似于 eth_getTransactionReceipt
的 JSON-RPC API 调用来获取其密封交易,在这种情况下,改为从 commitment struct 请求数据(客户端必须实现此扩展)。在收到调用并确保 区块 B
是下一个要提出的区块后,钱包将释放未密封的交易。从用户的角度来看,整个过程将是自动化的,但仍需要牢记复杂性的增加。
如果他们的未密封交易未能及时到达证明者,或者提议者没有看到它,或者选择在意识到证明者没有及时观察到它时将其包含在内,那么用户还需要承担受到处罚的风险——并且——。鉴于提议者可以充当安全网以包括迟到的未密封交易,因此大概还应该为未密封交易实施优先级费用(作为 f_\text{ToB}fToB 的扩展)。没有其他理由收取优先级费用,因为提议者被迫通过分叉选择规则包含未密封的交易。用户还必须持有足够的余额,以便可以保留罚款。
必须始终仔细检查对分叉选择的约束,以确保它不会以降低活性的方式超负荷。在密封交易中直接依赖分叉选择强制执行的理由是所有相关的交易都是已知的——如果它们被安排包含,则必须包含在先前的区块中。因此,证明者要观察的交易数量是有限的,并且他们将事先准备好这些交易的列表。但是,此列表可能不应太广泛,这最终由 g_tgt 决定。活性降低的可能性以及 UX 降低可能是所提出机制的最大缺点,值得进一步审查。
一个问题是,Includers 是否可以被利用,作为交易者和提议者之间的中间人。任何包含在 \text{IL}_\text{agg}ILagg 中的未密封交易当然都需要包含在区块中。但是,如果该机制严格依赖 IL 进行强制执行,则交易者必须信任 Includers 才能正确包含其未密封的交易。对于原本是防止 MEV 提取的无需信任机制,这似乎是一个相当严重的降级。当然,也可以让 Includers 在 T_1T1 之前列出 密封交易,以防止对其进行审查。但是,内容未知的交易首先不太可能被审查。
区块 A
和 区块 B
之间应该有延迟,还是这些区块应该是连续的?此外,交易者是否应该能够独立设置这样的延迟?延迟的一个原因是,它可以使交易者更加确定 区块 A
不会被 reorg。在当前的 Gasper 共识机制下,可能会发生 reorg。在 SSF 下,将延迟减少到 0 似乎是合适的。但是,区块 reorg 的损害是适度的。如果 区块 A
被 reorg,未密封的交易仍然不可执行,因为该交易将指定 区块 A
是其锚定的唯一区块。通常,较短的延迟通常更好,因为它使交易能够更快地结算。
给予交易者独立设置延迟的能力可能是有益的。但是,一个令人担忧的原因是,在防止交易溢出某些特定未来区块方面增加了额外的复杂性。在这种情况下,gas 阈值 g_tgt 必须具有前向属性并适用于未来的区块。提议者将负责跟踪提交给未来区块的交易,并确保它们不超过 g_tgt。同时,承诺 struct 仍然需要有一些阈值,并且对交易可以指定的未来插槽数量也有限制。在某些情况下,用户会渴望将其交易包含在未来的特定插槽中。允许用户为未密封的交易指定一个特定的未来插槽,而不是仅指定从包含密封交易开始的通用延迟,这将使其成为可能。当用户必须依靠延迟来尝试定位特定的未来插槽时,此选项可以防止密封交易包含在“错误”的插槽中。
未能解封交易的处罚应该是什么?这取决于通过发布密封交易并仅在有利可图的情况下才解封它们,预计可以提取多少 MEV。这不是一种直接的 MEV 提取技术——提取者必须猜测潜在的交易内容,并且会缺乏对 f_\text{ToB}fToB 的了解,因此也无法了解可用于提取的交易的排序。通过对这种 MEV 提取技术的预期价值进行适当的估计,可以设计处罚,并考虑到密封交易的现有成本(请记住,用户必须始终在 区块 A
处支付全部 gas 金额)。处罚大概应该是固定的,可能还会添加一个随 basefee 变化的成分。当然,可能会发现零处罚是合适的。最后请注意,在构建区块的其余部分时,仍然可以回溯密封交易,但这并不是特别有害。
如果错过了插槽,则排队的交易将改为包含在下一个区块中。因此,未密封的交易永远不会仅仅因为 区块 B
未能扩展区块链而被跳过;它们必须以正确的顺序包含在第一个成功的区块中。如果 区块 A
和 区块 B
之间存在延迟,则可能会有几个最多 g_tgt 的 gas 的未密封交易批次排队等待包含,一旦有错过的区块。例如,如果区块之间的延迟为两个额外的插槽并且错过了一个区块,则下一个区块将需要包含两批未密封的交易。有两种可能的解决方案:
区块 A
延迟到 区块 B
,而不是按 插槽。因此,如果错过了一个区块,则整个队列将移动一个插槽。但是应该注意的是,当区块被 reorg 时,这可能会破坏用户解封交易的timing,从而使该方法复杂化。密封交易机制是否为追求错过提案处罚提供了额外的理由?由于交易排序不会因失败的提案而中断,因此它可能并不重要,但仍然是增加提议者避免错过插槽的激励措施的众多原因之一。
- 原文链接: ethresear.ch/t/sealed-tr...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!