Published on
【Free MEV系列】| MEV 中的组件与概念
Authors
  • avatar
    Name
    thinkingchaindotapp
    Twitter

MEV 中的组件与概念

下图是我理解的MEV的生命周期,你可以通过这个链接找到原出处:

MEV游戏过程

下面说明各个组件:

  • Blockchain Memory Pool && Blockchain State:我们需要在Memory Pool中获取还没有上链的交易,或者查看区块链状态,这是我们原始的数据来源

  • What to focus

    • Speed(Local or third party RPC):我们需要从一个全节点获取区块链上最新的状态,由于区块链的分布式特性,信息到达每个用户的速度有快有慢。你越快获得数据,那么就意味着你拥有更大的可能性发现机会然后捕获它。正常来说,自己维护一个节点会比使用第三方速度快几个量级。
    • 各种MEV机会:我们需要书写策略,并且实时更新它以符合市场的需求。这是MEV的核心部分,同时书写策略也是最困难的部分,你需要了解DeFi的玩法(熟悉各种项目,越多越好),运用数学来计算复杂的盈利情况,设计高效的算法,等等。
    • Speed(Simulator && Searching for profit):我们需要为我们的策略书写程序。使用Rust书写机器人,它足够快;优化算法,降低复杂度,并且最终模拟出来的结果是盈利的
  • Searcher(Bundles):我们有了策略,然后需要若干个操作排序好,然后捆绑起来成一个原子交易,交给可信任的Builder

  • Private Orderflow:一些协议的VIP订单薄,比如1Inch

  • MEV-Share:用户可以将他们的交易发送到一个被称为 MEV-Share 节点的专门角色。MEV-Share 节点会根据用户的隐私偏好有选择地分享有关用户交易的信息。Searcher在看到这些信息后,会向 MEV-Share 节点提交部分交易包,试图在不查看完整交易数据的情况下从用户的交易中提取 MEV。MEV-Share 节点会模拟每个Searcher的交易包,并将成功的交易包转发给Builder,同时附带一个条件:用户必须得到他们的交易所产生的 MEV 的指定百分比(默认是 90%)。

  • Builder:

    • 流行的Builder:我们需要尽可能多地将捆绑包发出去给多个builder(比如占比前四的builder),这样我们可以更快的打包上链。下面是一些参考:

      flashbot
      builder0x69
      beaverbuild.org
      rsync-builder.xyz
      bloXroute
      Blocknative
      Tian
      eth-builder.com
      BuildAI
      manta-builder
      payload.de
      lightspeedbuilder.info
      edennetwork.io
      finest artisanal blocks
      ...
      
    • First-price sealed-bid auction:所有的searcher都进行投标到builder的黑盒当中,他们互相不知道其他人的竞价金额(也叫贿赂费)。Builder会从黑盒中,选取给的贿赂费最多的Bundles,然后优先打包进区块。贿赂费:可以使用gas费的方式,也可以直接将ETH发送到coinbase地址

    • Builder的一些特性:

      • 交易上链之后,才对外可见。(交易不仅在被纳入区块之前对网络隐藏,而且Relayer和Validator等中介机构在交易被纳入区块链之前也无法查看交易内容。注意:这个描述来自Flashbot v1.0,具体情况视平台而定)
      • 如果searcher在黑盒中的竞拍失败了,那么它的交易不会被上链,也就是说不会消耗gas
    • 用户可以通过平台的RPC参与竞价。比如Flashbot的是一个叫做eth_sendBundle的RPC

  • Relay

    • 各个Builders根据自己的利益打包好了一个区块,然后他们一起将区块提交给Relayer。Relayer从这些区块中选取他最喜欢的Block(给钱越多越喜欢)
    • Relayer选好最终的那个区块之后,将它移交给MEV-Boost
  • MEV-Boost

    • MEV-boost 是共识client的附属软件,是一个独立的开源软件,用于查询区块构建并将其外包给Builders
    • 各个Relayer根据自己的利益打包好了一个区块,然后他们一起将区块提交给MEV-Boost。MEV-Boost从这些区块中选取他最喜欢的Block(给钱越多越喜欢)
    • MEV-Boost选好最终的那个区块之后,将它移交给Validator
  • Validator:从MEV-Boost拿到区块之后,确认上链

然后,我们所做的所有工作,就是围绕这个图

Tags