本文提出了一种名为randEAs的方案,旨在缓解执行拍卖(EAs)中与多区块MEV(MMEV)相关的问题。randEAs通过在特定的时间窗口内随机分配执行提议权,并在执行槽位前一个槽位揭示,从而防止提议者提前知道他们是否会控制多个连续槽位。这种方法允许参与者在赢得拍卖后获得未来的执行提议权,而无需确切知道他们将控制哪些连续的槽位。
\
Screenshot 2024-10-09 at 10.25.421546×1550 244 KB
作者: Thomas Thiery - 2024年11月6日
感谢 Julian, Barnabé, Anders 和 Jonah Burian 为本文提供的讨论、反馈和评论。
执行拍卖 (EAs) 已被提议作为 证明者-提议者分离 (APS) 的候选实现方案。EAs 旨在通过进一步 分离证明/验证的角色 和区块执行提议来防止最大可提取价值 (MEV) 的负外部性。具体来说,EAs 解决了两个关键问题:参与信标提议者时机博弈的激励以及执行提议者收益的差异。
通过提前很久(例如,提前 32 个插槽)拍卖提议执行负载的权利,EAs 可能通过消除延迟区块提议的直接激励来缓解时机博弈。 此外,通过燃烧中标的价值,EAs 可以减少提议者收益的差异,并有助于 提高微观和宏观共识的稳定性。 本质上,EAs 涉及协议运行拍卖以出售未来的执行提议权,证明者监控投标以确保选择最高的投标,并且收益被 燃烧。
EAs 的简单性及其一些 经济特性 使其成为以太坊中实施的潜在候选者。通过运行拍卖来分配提议权,EAs (1) 有效地将区块执行提议与证明/验证分离,(2) 对每个插槽强制执行新的竞争,以及 (3) 旨在通过消除对时间敏感的区块价值波动(例如,来自 CEX-DEX 套利)的依赖来解决“飞行中的价值问题”。
然而,人们对执行拍卖 (EAs) 和其他证明者-提议者分离 (APS) 设计中固有的中心化力量表示担忧。这些担忧具体包括:
重要的是,randEAs 仅专注于提出一种候选设计来减轻与 MMEV 相关的问题。减轻 MMEV 的一个潜在解决方案是引入第二次拍卖——由执行提议者(即初始拍卖的获胜者)及时进行(例如,在插槽n+32
期间)。在第二次拍卖中,第一组交易(区块顶部)的插入权将出售给可能与第一次拍卖的获胜者不同的方(参见Barnabé 的帖子 和 Mike 的文章)。在插槽期间引入此额外的拍卖消除了提前控制连续多个区块的全部内容的确定性,从而减轻了MMEV。此外,包含列表 (IL) 设计(如 FOCIL),其要求执行提议者在区块中包含来自多个参与者(例如,IL 委员会成员)的交易,可以通过向执行提议者添加约束来进一步缓解与 MMEV 相关的一些担忧。
在这篇文章中,我们提出了一种替代方法来解决 MMEV 的担忧,而无需额外的拍卖。在 randEAs 中,与执行凭证 (ETs) 类似,赢得初始拍卖可保证在特定的插槽窗口(例如,从插槽n+16
到n+32
)内的执行提议权,但赢得提议权的具体插槽仅提前一个插槽分配和公开。但是,与 ETs 不同,分配执行提议权的机制是拍卖。这种简单的方法允许参与者赢得拍卖时获得将来的执行提议权,而无需确切知道他们是否或何时会控制多个连续的插槽。
我们首先对 randEAs 设计进行高级概述(参见图 1),为了简单起见,有意省略了一些实现细节。
\
Sept 23 Screenshot from Notion1800×1306 276 KB
拍卖执行提议权:在插槽 n
期间,信标提议者会在将来的插槽窗口(例如,插槽 n+16
到 n+32
)内进行执行提议权拍卖。参与者提交投标以获取在这些未来插槽之一中提议执行负载的权利。插槽 n
的证明者会监视这些投标,并确保信标提议者接受最高的投标(例如,0.2 ETH
)和执行提议权获胜者的关联公钥(例如,执行提议者 0xA12
)。他们只有在提交的投标与他们看到的最高投标相符时,才会证明信标区块,使用类似 MEV 燃烧 的机制。
揭示确切的执行插槽:确切的插槽分配由信标提议者在执行插槽发生之前立即揭示。例如,在信标插槽 n+22
期间,信标提议者披露插槽 n
中拍卖的获胜者执行提议者 0xA12
必须为执行插槽 n+22
提供执行负载。这意味着,尽管拍卖获胜者知道他们将在窗口 n+16
到 n+32
内提议,但他们仅在必须提议之前立即了解其特定的执行插槽(例如,n+22
)。
通过在已知的窗口内随机分配确切的插槽并及时揭示它,randEAs 阻止了提议者提前知道他们是否会控制多个连续的插槽。
为了确保信标提议者专门且安全地将执行插槽分配给获胜者,我们结合了一种受 证明聚合 启发的机制。我们使用加密签名和确定性选择函数来保持执行插槽分配中的随机性和公平性。
1. 主要组件
2. 生成插槽签名
对于拍卖窗口中的每个执行插槽(例如,n+16
到 n+32
),该特定插槽的信标提议者会生成一个唯一的插槽签名。此签名用作加密随机性源,用于选择该特定插槽的执行提议者。
def get_slot_signature(state: BeaconState, slot: Slot, privkey: int) -> BLSSignature:
domain = get_domain(state, DOMAIN_EXECUTION_SLOT_SELECTION, compute_epoch_at_slot(slot))
signing_root = compute_signing_root(slot, domain)
return bls.Sign(privkey, signing_root)
函数说明:
get_domain
: 定义插槽选择的上下文。compute_signing_root
: 组合插槽和域以创建用于签名的唯一消息。bls.Sign
: 使用信标提议者的私钥生成 BLS 签名。3. 选择执行提议者
使用生成的插槽签名,插槽 n+22
的信标提议者从执行插槽 n+22
的执行提议者池中确定性地选择一个执行提议者。
def select_execution_proposer(proposer_pool: List[str], slot_signature: BLSSignature) -> str:
signature_bytes = bls.Signature.to_bytes(slot_signature)
hashed_signature = hashlib.sha256(signature_bytes).digest()
hashed_int = int.from_bytes(hashed_signature[:8], 'big')
proposer_index = hashed_int % len(proposer_pool)
selected_proposer = proposer_pool[proposer_index]
return selected_proposer
此函数(1)使用 SHA-256 将插槽签名转换为哈希,以确保不可预测性,(2)将哈希值映射到执行提议者池中的索引,以及(3)选择确定索引处的提议者,从而确保每个提议者都有同等的选择机会。
4. 延迟揭示
特定插槽的选定执行提议者在执行插槽紧邻之前的信标插槽中揭示。
n+22
,分配由插槽n+22
的信标提议者在信标插槽n+22
期间揭示。为了演示 randEAs 的工作方式,我们基于以下假设提出了一个简单的模型:
我们定义以下变量:
每个执行提议者 i 都从以下窗口分配一个插槽:
W_i = \{ \text{slot}_{n+16}, \dots, \text{slot}_{n+15+W} \}
执行提议者 $is slot 是从 W_i 中的可用插槽中随机选择的。
插槽分配遵循以下规则:
随机选择:一个插槽从 W_i 中随机分配给执行提议者 i,一旦分配,就无法重新分配。
窗口进度:一旦 W_n 中的所有插槽都被分配,下一个窗口,
W_{i+W} = \{ \text{slot}_{n+32}, \dots, \text{slot}_{i+31+W} \}, 将为下一组执行提议者打开。
随着窗口中分配了更多的插槽,执行提议者知道其确切插槽的概率会增加,因为他们可以观察到哪些插槽已被分配。当仅剩下一个未分配的插槽时,此概率达到确定性(参见图 2)。
\
Slot Allocation Mechanism output (1) (1)2379×1979 195 KB
让 k 表示已在提议者的窗口 W_i 中分配的插槽数。提议者 n 在最终揭示之前知道其确切插槽的概率为:
P_i(k) = \frac{1}{W - k}
原因如下:
剩余的总插槽: 在 W_i 中剩余 W - k 个未分配的插槽:
\text{剩余的总插槽} = W - k
相等的概率: 由于插槽是随机分配的,因此每个剩余的插槽都有相同的机会分配给提议者 n。
剩余一个插槽时的确定性: 当仅剩下一个未分配的插槽 W - k = 1 时,概率变为:
P_i(W - 1) = \frac{1}{W - (W - 1)} = \frac{1}{1} = 1
随着窗口的填充,知道确切插槽的概率会增加,最终在仅剩下一个未分配的插槽时达到确定性。
简单性:采用具有随机插槽分配的插槽窗口,而不是引入第二个 及时 (JIT) 拍卖,简化了实现,并减少了协议参与者(如证明者)的资源,否则他们需要确保正确进行额外的拍卖,并且参与者遵守规则。
随机 EAs 有效地区分了知道你将提议和知道你将在其中提议的确切插槽。这使提议者可以利用赢得在不久的将来提议的权利的确定性来为赢得拍卖的价值定价,同时限制了可能因提前知道他们将控制的确切插槽而引起的潜在滥用(例如,:MMEV)。
减少了复杂投标者的优势:不知道你将控制的确切插槽也可能会减少复杂方在执行提议权拍卖期间竞标时获得的优势。例如,如果计划在特定插槽中启动Token或 NFT,则插槽分配的不确定性可能会阻止复杂参与者通过提前为预期的区块价值定价来利用此信息来提取更多的 MEV。
随机 EAs 允许执行提议者提供短期(提前 1 次)和长期(保证在给定插槽窗口中获得执行提议权)预确认。我们还可以设想赢得在给定时间窗口内提议的权利的提议者进行链下协调,以便为用户提供更好的保证。
当前的市场结构采用协议外的提议者-构建者分离(PBS),倾向于将区块提议集中在少数具有最高事后MEV(最大可提取价值)提取能力的参与者中。 这种集中导致了巨大的可变性,并导致了寡头垄断,其中只有两个构建者负责生产超过 85% 的所有区块。 相比之下,随机执行拍卖 (randEAs) 与执行凭证 (ETs) 类似,可能会将这种集中转移到对 MEV 提取具有最高事前价值的参与者(参见Pai 和 Resnick,2024)。 在 randEAs 下,执行提议权的赢得者可能本身 MEV 提取能力有限,而是外包区块构建。 这种外包导致执行提议权集中在那些资本成本最低的人手中。 如果参与者之间的资本成本是统一的,则集中度反而有利于那些具有卓越 MEV 提取能力的人。 在更实际的场景中,当参与者之间的资本成本和 MEV 提取能力都不同时,这两个因素之间的相互作用可能会导致进一步的集中,从而可能导致垄断(参见Burian、Crapis、Saleh,2024)。 这种市场结构的变化可能会导致比当前 PBS 系统更大的中心化,必须仔细考虑 randEAs 增加集中度的可能性。
如果插槽窗口相对较小(例如,16 个插槽),则随机 EAs 可能会在给定窗口内的提议者之间引入一些不平等。 分配到窗口末尾附近的插槽的提议者更有可能提前知道其确切的插槽,因为分配和揭示了更多的插槽。 相反,无限长的时间窗口将提供无记忆属性(即,知道确切插槽的概率保持不变),但它会使定价变得非常复杂:如果没有有界的窗口,则固有地难以为执行提议权分配公平的价值,因为没有自然的限制或约束来指导定价决策。
赢得多次拍卖的竞标者提高了预测他们将提议的确切插槽的能力,特别是由于未分配的插槽数量减少,并且如果他们自己的插槽尚未分配。 例如,如果单个方连续赢得了三场拍卖,并且他们的插槽尚未分配,而窗口中仅剩下三个未分配的插槽,则他们肯定会被分配到这三个剩余的插槽。 这种确定性使他们能够控制多个连续的插槽,从而可能使他们获得不公平的优势,并使他们能够利用 MMEV 机会。
- 原文链接: ethresear.ch/t/proposers...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!