PEPC-Boost 是一种新的中继设计,旨在通过分离区块的顶部(ToB)和剩余部分(RoB)的拍卖来减少集成搜索者构建者的竞争优势。它允许搜索者单独竞标将其 CEX-DEX 套利交易包含在 ToB 中,并允许构建者提交将包含在 RoB 中的区块,旨在提高构建者市场的竞争力并减少中心化。
与规模较小的构建者相比,像高频交易公司这样的集成搜索者-构建者拥有卓越的能力来提取高价值的区块顶端MEV机会,例如CEX-DEX的套利。目前通过MEV中继完成的PBS拍卖,只拍卖整个区块,这意味着有能力提取高价值区块顶端机会的构建者,可以通过赢得整个区块的拍卖轻松地超过其他构建者的出价,从而增加中心化并降低构建者市场的竞争力。
本文从PEPC(一种为更通用的区块分配机制提出的链上机制)中汲取灵感,提出一种名为PEPC-Boost的新中继设计。PEPC-Boost为区块顶端和区块剩余部分分别举行拍卖。PEPC-Boost中继允许搜索者单独竞标,将其CEX-DEX套利交易包含在区块顶端,并允许构建者提交将包含在区块剩余部分的区块。通过分别出售区块顶端和区块剩余部分,PEPC-Boost旨在减少集成搜索者-构建者的竞争优势,这将有助于提高竞争力并减少构建者市场的中心化。
术语 | 描述 |
---|---|
ToB | 区块顶端(Top of Block) |
RoB | 区块剩余部分(Rest of Block) |
HFT Firms | 高频交易公司(High Frequency Trading Firms) |
ToB value | 搜索者愿意为将其交易包含在ToB槽位中而向提议者支付的Eth金额 |
RoB value | RoB构建者增加的验证者支付 |
Searchers | 寻找提取大量MEV的参与者 |
Builders | 构建区块并将其提交给MEV中继的参与者,允许他们竞标验证者区块空间 |
PEPC | 协议强制提议者承诺(Protocol Enforced Proposer Commitments) |
Barnabe Monnot提出的PEPC是一种协议机制,允许提议者对其构建的区块做出承诺。一些可能的承诺的例子有某些类型的交易排序、并行区块构建等。
PEPC是有用的,因为它允许协议中更通用的区块分配机制,从而消除了可能对协议产生不良副作用的特定锁定结果。
当前的构建者格局非常中心化。像高频交易公司这样的集成构建者-搜索者更有可能赢得PBS拍卖,因为他们可以维护私有订单流并访问专门的中心化交易所数据,从而使他们具有卓越的区块顶端能力,这使他们能够从CEX-DEX套利中提取比非集成构建者更多的利润,并赢得PBS区块拍卖,这也降低了构建者市场的竞争力。
PEPC-Boost 是一个链下实现的PEPC类型的分配方案,它将一个区块拆分为区块顶端和区块剩余部分通道(类似于Skip协议中的通道概念)。搜索者可以参与拍卖,竞标他们想要包含在区块顶端的CEX-DEX套利交易,构建者可以竞标将其区块包含在RoB中。这通过允许不同的参与者构建整个区块的各个部分来开放提议者的区块空间,这是一种并行区块拍卖的形式。
集成搜索者-构建者没有动力使用PEPC-Boost中继,因为他们已经具有提取ToB机会的卓越能力,这使他们能够构建高价值区块,从而可以在完整区块拍卖中胜过其他构建者。有能力构建RoB的搜索者可以使用PEPC-Boost与有能力生成高价值ToB交易的搜索者进行免信任配对,以构建可以与最佳构建者竞争的高价值区块。这些区块有可能胜过大型集成搜索者-构建者,从而提高构建者市场的去中心化和竞争力。它还允许较弱的构建者包含其交易,从而提高协议的抗审查性。由于顶级集成搜索者-构建者没有动力使用PEPC-Boost,因此我们可以预期区块包含率低得多的构建者会连接到PEPC-Boost,以便他们的交易更有可能被包含。请注意,这是一项需要更彻底完成的分析。
PEPC-Boost中继公开了一个新端点,该端点接受一个bundle,该bundle由来自搜索者的ToB交易和一个用于支付给提议者的用于将该bundle包含在ToB中的费用交易组成。中继通过一个专门用于接收RoB区块的端点接收来自构建者的RoB区块。如果搜索者提出的ToB bundle的价值与构建者提交的RoB区块的价值之和是该特定槽中看到的最高价值区块,我们会将ToB bundle和RoB区块组装成一个组合的执行负载,并将最终出价存储在中继数据库中。最终出价的价值是ToB的价值和RoB的价值之和。我们正在对初始版本进行“静态评估”,以合计这些价值并检查它是否是最高的。区块的实际价值可能会较低,因为RoB中的交易可能会由于ToB的状态更改而回滚。我们正在探索可以帮助我们更有效地模拟RoB价值的解决方案。
下图显示了PEPC-Boost的架构:
搜索者通过/relay/v1/builder/tob_txs
端点发送他们想要包含在给定槽位的ToB中的bundle,以及在特定父哈希之上给提议者的付款。该端点首先模拟该bundle,以检查搜索者是否已包含给定槽位的提议者的付款,以及发送的ToB交易是否是有效的非回滚交易。此模拟通过 validateTobSubmission
RPC调用完成。一旦模拟成功,我们会检查bundle中的ToB交易是否是潜在的CEX-DEX套利相关交易。在PEPC-Boost的初始版本中,我们只允许搜索者进行一笔CEX-DEX套利交易,目前是Eth/USDC Uniswap V3交换。通过限制我们在ToB上接受的交易类型,我们还可以减少与RoB发生状态冲突的机会,从而减少RoB中交易回滚的机会。在未来的版本中,我们将增加我们在bundle中接受的ToB交易数量,并允许一个包含多个CEX-DEX套利相关交易的bundle。如果该bundle是目前为止看到的最高价值的,我们会将该bundle存储在PEPC-Boost中继的Redis缓存中。
有关ToB拍卖和ToB交易检查的更多详细信息,请参考:
当构建者通过/relay/v1/builder/rob_blocks
提交RoB区块时,我们会检查提交的区块的槽位和父哈希是否存在ToB bundle。如果存在ToB bundle,并且ToB价值和RoB价值之和是目前为止看到的最高的,我们会将其发送到 blockAssembler
RPC,以将ToB交易bundles和RoB区块组装成一个组合的执行负载,并将带有此组合执行负载的最终出价存储在PEPC-Boost中继数据库中。RoB构建者目前通过将付款附加到区块的末尾,使用现有模型向提议者付款。
有关更多详细信息,请参考:
下图是一个序列图,突出了PEPC-Boost中的交互:
PEPC-Boost利用了Flashbots MEV-Boost中继代码。https://github.com/bharath-123/pepc-boost-relay 包含PEPC-Boost中继的代码。
我们利用Flashbots Builder来实现用于区块组装器和ToB交易验证的RPC。https://github.com/bharath-123/pepc-boost-builder 包含区块组装器和ToB交易验证RPC的实现。
为了在本地devnet上测试PEPC-Boost,我们使用了Kurtosis。Kurtosis允许非常容易地启动本地devnet。有关使用Kurtosis测试PEPC-Boost的更多详细信息,请参考 https://github.com/bharath-123/pepc-boost-docs/blob/main/CUSTOM_DEVNET_SETUP.md。
我们已经在 https://github.com/bharath-123/pepc-boost-testing/tree/devnet-testing 中编写了脚本,用于将搜索者交易发送到PEPC-Boost中继以进行测试。
https://github.com/bharath-123/pepc-boost-docs 包含每个组件的详细文档。
在PEPC-Boost的初始版本中,我们实现了一个ToB拍卖,该拍卖接受一个Uniswap v3 Eth/USDC交易和一个提议者付款交易。我们引入了一个新的RoB区块提交API,构建者可以向其发送RoB区块。我们将区块组装RPC与RoB区块提交API集成在一起,每当构建者的RoB交易与该槽位的有效ToB交易匹配时,都会调用该API以取回ToB交易和RoB交易的组装负载。
我们已经在构建器中实现了区块组装RPC和ToB验证RPC。
https://github.com/bharath-123/pepc-boost-relay 包含PEPC-Boost的初始版本,https://github.com/bharath-123/pepc-boost-builder 包含区块组装和ToB验证的RPC的实现。
我们正在使用Kurtosis设置的本地devnet中测试PEPC-Boost。
我们现在也已将PEPC-Boost部署到Goerli!
https://website.pepc-booost.com/ 托管PEPC-Boost网站。
如果你正在运行验证器,请随时在 https://api.pepc-booost.com/ 连接到PEPC-Boost
随着PEPC-Boost的 आगे发展,以下是我们正在关注的一些事项:
请在此处找到我们目前正在PEPC-Boost中处理的项目的完整列表:https://github.com/bharath-123/pepc-boost-relay/issues
以下是一个演示视频,其中包含对PEPC-Boost的简要说明和一个工作演示。
我要感谢Barnabe Monnot (EF)、Mike Neuder (EF) 和 Terrence (Prysmatic Labs) 的所有宝贵反馈和讨论。
我要感谢Paritosh (EF) 指导我更好地测试 PEPC-Boost!
我要感谢Kurtosis团队 构建了一个可靠的产品来轻松设置本地Ethereum开发网络。 该团队非常有帮助并且反应超级迅速,这对我帮助很大。
我要感谢Mario Havel (EF) 和 Josh D (EF) 组织了EPF计划,使我能够发布这项工作。
- 原文链接: hackmd.io/@bchain/BJkarr...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!