PEPC-Boost是一种新的中继设计,旨在通过分离链上交易的顶部区块(ToB)和剩余区块(RoB)拍卖来减少集成搜索者构建者的竞争优势,从而提高构建者市场的竞争力和降低中心化。它允许搜索者单独竞标将其CEX-DEX套利交易包含在ToB中,并允许构建者提交将包含在RoB中的区块。
过去更改2 年过去更改2 年
与较小的构建者相比,像高频交易(HFT)公司这样的集成搜索器-构建者具有更强的能力来提取高价值的块首最大可提取价值(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公司 | 高频交易公司 (High Frequency Trading Firms) |
ToB价值 | 搜索者愿意为将其交易包含在ToB位置而支付给提议者的Eth金额 |
RoB价值 | RoB构建者增加的验证者支出 |
搜索者 | 旨在提取大量MEV的参与者 |
构建者 | 构建区块并将其提交给MEV中继器,从而允许他们竞标验证者区块空间的参与者 |
PEPC | 协议强制执行的提议者承诺 (Protocol Enforced Proposer Commitments) |
Barnabe Monnot提出的PEPC是一种协议机制,允许提议者对其构建的区块做出承诺。 可能的承诺的一些示例包括某些类型的交易排序、并行区块构建等。
PEPC很有用,因为它允许协议中更通用的区块分配机制,从而消除了可能对协议产生不良副作用的特定锁定结果。
当前的构建者格局非常中心化。 像HFT公司这样的集成构建者-搜索者更有可能赢得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区块组合成一个组合的执行payload,并将最终出价存储在中继数据库中。 最终出价的价值是ToB的价值和RoB的价值之和。 我们正在对初始版本进行“静态评估”,以汇总价值并检查它是否是最高的。 区块的实际价值可能会较低,因为RoB中的交易可能会由于ToB的状态更改而还原。 我们正在探索可以帮助我们更有效地建模RoB价值的解决方案。
以下是显示PEPC-Boost架构的图:
搜索者通过/relay/v1/builder/tob_txs
端点发送他们想要包含在给定槽的ToB中并在特定父哈希之上的bundle,该bundle包含ToB交易和支付给提议者的支出。该端点首先模拟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交易bundle和RoB区块组装成一个组合的执行payload,并将包含该组合执行payload的最终出价存储在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区块发送到该API。 我们已将区块组装RPC与RoB区块提交API集成,每当构建者的RoB交易与该槽的有效ToB交易匹配时,该API就会被调用,以返回ToB交易和RoB交易的组装payload。
我们已经在构建器中实现了区块组装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团队构建了一个可靠的产品,可以轻松设置原生以太坊devnet。 该团队非常有帮助并且反应非常迅速,这对我帮助很大。
我要感谢Mario Havel(EF)和Josh D(EF)组织EPF计划,该计划使我能够发布这项工作。
- 原文链接: hackmd.io/XUj5jkz6R2Kuq0...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!