复制成功

分享至

主页 > 数字货币 >

以太坊背后的权力机器:MEV与PBS

2023.01.29

谁控制了过去,谁就控制了未来;谁控制了现在,谁就控制过去。—《一九八四》

2007年,加拿大皇家银行的交易员胜山发现了一件令他感到困惑的事情,当他在交易终端按下买入键的一瞬间,所有的订单消失了。

而在区块链的世界里也发生了一件相似的事情。2022年6月, Scott Bigelow在以太坊主网上面部署了一个加密合约并往里存入了0.035个以太币,只有他一个人知道取出合约内存款的密码。而就在他往合约发送密码信息的一瞬间,合约里的以太币消失了。

以太坊背后的权力机器:MEV与PBS

毫无疑问的是,他们都遇到了抢跑者。胜山想要下的订单分布在各个不同的交易所,因为地理位置的缘故,每一个订单所到达交易所的时间是有微小差异的,高频交易者通过更快的光纤网络提前知道了第一笔买入单,从而在胜山的订单下到其他交易所之前把订单都给买光。

Scott的密码信息尽管只有他一个人知道,可当他的交易信息被各个节点广播前,就被抢跑者在内存池子中所嗅探到,并且复制了他的密码以更高的gas费用抢先把合约里的钱抢走。这些抢跑机器人仅仅只是这些“捕食者”活动的冰山一角。不同于传统金融的高频交易,在区块链这个无准入机制的黑暗森林中,已然出现了更为精巧残忍的策略,并且被广泛的应用于defi、nft各个领域。

本文将从以太坊底层原理的角度来展示mev机器人、flashbots在其中所担任的角色;pbs架构对后续加密生态的影响和对未来各个角色的演进预测。共分为三个章节:

第一章节为原理解读。

第二章节阐述了mev的生态格局、投资以及创业机会。

第三章节是对未来构建者-提议者分离架构的预测和展望。

1、产业链

要想完全彻底的理解现在的pbs生态(提议者-构建者分离),我们可以从用户端发出一笔的视角来看待:“当一个用户在按下与去中心化应用交互的那一瞬间再到在共识层上完全确立,这一个过程到底发生了什么?”

以太坊背后的权力机器:MEV与PBS

为了方便理解,我将这些环节拆分成了几个步骤:

用户交易(transaction):当我们在钱包里进行转账或是在某个去中心化交易所里进行代币的兑换亦或是mint某个nft,从链上的数据结构来看都是类似的。

以太坊背后的权力机器:MEV与PBS

如上图所示就是对一个nft合约进行mint所需要的信息,其中最重要的信息就是data,在上图data里面0x1249c58b就是对mint()这个function的调用。而如果我们把data里面的数据换成 0x那么就代表一个普通的转账。通过这些data和value的数据,我们可以清晰地判断用户这一笔交易的意图和作用。

内存池(mempool):当用户使用公共的节点远程调用服务时(例如metamask默认使用infura的以太坊节点调用服务),交易会跑到内存池子里。内存池是在节点收到交易并且把他包含到区块的一个缓冲区,其作用就是帮助节点对各类交易进行检查,并且判断交易的输出和签名的合法性、有效性。

以太坊背后的权力机器:MEV与PBS

内存池里的交易对每一个节点来说是不同的,但是对于整个区块链网络上来说,他所包含的数据却是公共的。换言之,只要有人能够在全球各地云服务器上架设节点,他就可以获得大部分的内存池数据。内存池数据的滥用,对于普通用户来说是极其不友好的。正如我在开头所讲述的案例中一样,套利者可以提前知道用户的交易意图从而进行获利。这一获利的过程我们称之为mev(最大可提取价值)。

搜索者(seacher):也称为以太坊机器人操作员,目前我们所了解的套利者、nft-mint机器人都可以归类到搜索者这一个范畴。搜索者和flashbots息息相关,在flashbots开源了他们的拍卖组件之后,搜索者可以通过发送捆绑包的方式,将自己的交易或者是内存池的交易按顺序拼接起来,并且指定某个区块构建者让他们把这个捆绑包里的交易包含在区块里,从而避免其交易在公共内存池之中被嗅探到。

以太坊背后的权力机器:MEV与PBS

Flashbots 实际上是创立了一种全新的交易信息通道,他使得一些用户能够直接的和区块构建者进行通讯。例如下面的例子,我通过flashbots将上图mint的交易内容直接传递给区块构建者从而规避了我的mint信息提前被人知道。

以太坊背后的权力机器:MEV与PBS

搜索者也需要支付一定的价格从而然他们的捆绑包变的更加有吸引力。例如通过调高gas的费用,或者直接将以太币转移到构建者的coinbase地址。

以太坊背后的权力机器:MEV与PBS

借由捆绑包的机制,搜索者拥有在小范围内改变交易排序的能力。并且从机制上可以保证排好顺序的交易有不被插队的可能性。通过排列组合外部的交易和自己产生的合约调用交易,就组成mev领域里面各种各样的攻击策略。例如抢跑、后跑、三明治攻击、jit机器人、时间盗贼攻击和叔块盗贼攻击等等。

  • 抢跑:通过抢先并且复制对手的交易策略来获得利润。例如抢在普通用户面前以更高的gas费用抢先mint到nft,抢占人类用户的mint份额等等。

  • 后跑:通过争抢某个交易的后续位置从而获得利润。机器人通过监控某些代币在uniswap上面创建新交易对后,在其部署完池子后创建大量买入交易。该策略是成为第一个购买代币的人。同理,机器人也可以通过监控nft项目方激活nft合约mint()的那一笔交易来成为第一个mint nft的人。现有市面上所存在的nft 抢mint机器人大多都遵循这样的原理和架构来设计。

  • 三明治攻击:当一个用户想要在某个去中心化交易所中换取代币a时,机器人可以创建两个交易并且利用捆绑包功能将受害者的交易夹在其中。机器人的第一笔交易购买了代币a,受害者的交易接下来推高的代币a的价格,第三笔交易再将相同数量的代币a卖出从而获得利润。利润取决于受害者交易所设置的滑点。

  • Jit 机器人(just in time):这种模式出现在uniswap v3的代币池子中,因为v3本身的集中流动性特性,使得用户可以在某个极小的区间内设置一笔lp。当一个用户想要在v3进行大量代币交易时,立刻发起一笔添加流动性的交易和一笔销毁流动性的交易。将用户的交易夹在其中,从而获取这一笔交易产生的流动性收入。这种模式需要jit机器人提前计算好前后交易的头寸变化,使得用户的交易刚好落在其设计的流动性区间内。

  • 以太坊背后的权力机器:MEV与PBS

    由于篇幅有限,我不在这篇文章里面介绍详细攻击的手法和步骤,感兴趣的读者可以访问这里(https://www.mev.wiki/attack-examples)。并非所有的搜索者都是套利者。我们也可以利用这些机制来做一些好事。

  • 转移服务:有一些黑客会利用用户被盗钱包中的nft来进行钓鱼,通常这个钱包里面的eth是不够支付转移的gas费用的。当受害者想要转入gas来进行转移时,黑客就会使用脚本把gas费转走。我们可以使用flashbots赶在黑客把你转入的gas费用拿走之前,将私钥被盗钱包中的nft取回来。设立一笔转入被黑钱包的交易,再创建一个从被害钱包转出的交易,将这两笔交易放在捆绑包中并且发送给区块构建者。由于这两笔交易在区块上是连续的,黑客没有办法阻止你转出被盗的nft。

  • 当一个搜索者完成了捆绑包(bundle)的构建时,他可以将这个捆绑包发送到其指定的区块构建者中。

    区块构建者(block builder):得益于flashbots在2022年11月份将区块构建的架构开源,我们可以知道区块构建者内部的架构设计。一个完整的区块构建客户端由两个不同的节点组成,包含了一个区块构建规格的geth执行层节点程序,以及一个改动过的prysm共识层节点。

    以太坊背后的权力机器:MEV与PBS

    区块构建者需要开放一个rpc端点,使得搜索者能够将捆绑包发送到指定的构建者之中。构建者本身分为矿工(geth)和构建(prysm)两个模块,矿工模块通过算法程序来选取符合其程式要求的捆绑包以及从内存池中选取交易并将其塞入创建好的区块之中。构建者模块在不断的与中继器和矿工模块沟通的同时开始生成块的数据,其中包括了块的哈希值、收款地址、和额外信息(通常构建者会在里面写上自己的名字)。并且设立一笔交易,将整个区块的收益以转账的方式发送给验证节点的收款地址。

    以太坊背后的权力机器:MEV与PBS

    中继器(relay):区块构建者需要一个信任的第三方来将其发送的区块送到验证者手上而不被泄露,同样的验证者也需要一个信任的中继层来帮其确保区块的合法性。当然不同的中继器其特点和特点都有所不同,一个验证者借由mev-boost来接入多个中继器从而获得最多的区块选择权。

    以太坊背后的权力机器:MEV与PBS

    从上述架构上,我们可以发现中继器也需要运行共识层节点和执行层节点用来接受和送出区块信息。中继器的外部有两个api分别对接区块构建者和mev-boost。这样的架构能够在保证区块信息不被泄露的情况下,最大化的降低提议者和构建者的沟通和信任成本。

    提议者:在以太坊合并之后,新的共识层被添加进了网络。提议者的架构由四个客户端组成:执行层节点、共识层节点、验证人(32eth)、mev-boost。这也是目前大部分以太坊节点质押商的底层架构。原先的节点质押商由前三个软件组成,可以把mev-boost理解成一个插件,用来协调两个节点的沟通并且从中继层获取额外的区块信息。

    以太坊背后的权力机器:MEV与PBS

    这样的架构实际上是将原有提议者构建区块的能力剥离出来,使得提议者只需要提议从mev-boost的区块并且将其添加到信标链上即可。同样的,mev-boost可以连接多个中继层,从而让提议者的利益实现最大化。最终搜索者和区块所产生的收益通过这整一个架构支付给提议者即——以太坊质押者。

    交易链条:

    以太坊背后的权力机器:MEV与PBS

    当一个用户发起一笔交易时,首先会进入公共内存池,如果这是一笔普通的交易,那就会在等待一段时间之后被区块构建者放入其创造的区块中、如果这是一笔被搜索者盯上的交易,就会以捆绑包的形式进入区块中。再经过中继层、最终被区块提议者签署证明并将其广播到网络。用户也可以使用区块构建者的私人节点,从而避开公共内存池。

    收益链条:搜索者在内存池中寻找能够捕获利益的交易,将这一笔交易打捞起来并与自身创建的交易组合并且放入捆绑包中。搜索者获得的利润会直接进入其钱包内,而为了让这笔交易能够被区块构建者打包入区块,搜索者需要支付一笔的手续费给区块构建者(通过gas 或者coinbase transfer)。

  • 区块构建者的收益 = 交易费用(gas)+ 搜索者支付手续费-销毁的gas费用

  • 区块构建者的利润 = 交易费用(gas)+ 搜索者支付手续费-销毁的gas费用 - 区块构建者给验证人的费用(成本)

  • Mev-boost收益 = 区块里的最后一笔转账 = 区块构建者给验证人的费用(成本)

  • 免责声明:数字资产交易涉及重大风险,本资料不应作为投资决策依据,亦不应被解释为从事投资交易的建议。请确保充分了解所涉及的风险并谨慎投资。OKEx学院仅提供信息参考,不构成任何投资建议,用户一切投资行为与本站无关。

    加⼊OKEx全球社群

    和全球数字资产投资者交流讨论

    扫码加入OKEx社群

    相关推荐

    industry-frontier