原文标题:《Censorship... wat do?》
原文作者:Jon Charbonneau
原文编译:RR
本文来自公众号老雅痞。
介绍
审查与ETH的价值观是不兼容的。
在过去的一个多月里,大家花了足够多的时间来考虑大家是怎么样走到这一步的。我将讨论将来的道路——大家怎么办这个问题?
开发者们该如何解决?
与审查规范作正面斗争应该是第一要务。撤资非常可能也需要尽快解决。
不过,规模扩张之类的问题确实可以退居第二。ETH可以在收费稍高的状况下存活,但它不可以在审查规范下存活。EIP-4844、Danksharding 和其他升级都非常复杂,或许会分散很多的时间和注意力。假如真的需要的话,EIP-4488 可以飞快速地达成,并且很有效。
优先考虑抵制审查是展示社区价值观最明确的方法。假如不如此做的话,将是一个或许会损害可信度的很糟糕的信号——假如核心协议开发都不会如此做,为何验证者、Flashbots 或任何其他中继者 / 建设者要优先考虑抗审查呢?
除此之外,目前是熊市,每一个人都非常穷,或者正在逃亡。收费是可同意的。
MEV-Boost
先简要概述一下构造。
捕获 MEV 需要复杂的技术。假如验证者被赋予这一任务,它们将变得中心化——只有可以提取 MEV 的成熟验证者才能获得有竞争优势的回报。建议者 - 建设者离别 (PBS) 解决了这个问题——创建一个新的专门的「建设者」角色来构建最好区块。然后,建设者向建议者 ( 验证者 ) 出价以同意他们的区块。成为建议者仍然比较容易,他们获得有竞争优势的回报=维持去中心化。
PBS 最后将被内置到协议中,但它还没筹备好。不过 PBS 已经在这里了——MEV-Boost 现在是协议外的垫脚石 ( 尽管有额外的信赖假设 )。它是一个附加的边车软件,验证者可以运行它来查看外包的区块构建。验证者仍然保留用他们我们的实行推广客户端并在当地构建区块的选项。
很多 MEV 搜索者运行特定的方案,并为建设者出价,以包含他们的bundle。建设者可以聚合这类 bundle+ 任何其他私有订单流 + 公共 mempool 买卖→构建最佳的完整区块。一些建设者也可以将搜索内部化,并自己饰演这个角色。
中继者概述
中继者是建议者和建设者都信赖的中介。他们接收建设者的区块,并在将其发送给建议者之前将其推广托管。对于一个特定的中继者,这个过程可以是如此的:
设计目的
MEV-Boost 解决了 MEV-Geth 的两个主要不足之处:
1. Solo-staker 参与
PoW 矿工会收到 bundle,然后他们将创建一个完整的区块,将这类 bundle 放在顶部。他们从未被发送过完整的区块。Flashbots 从未将被 OFAC 列入黑名单的买卖纳入其 bundle 中,但这并无关紧要,由于矿工可以将它们包括在区块的其他任何地方。
这一策略意味着信赖矿池运营商——他们可以了解地看到这类 bundle,所以假如他们想,他们可以直接为自己窃取这类机会。这种信赖没办法扩展到一个庞大的ETH验证者集合。这就是为何 MEV-Boost 要为建议者提供完整区块是什么原因。建议者在区块主体被透露给他们之前签署并提交区块标题。假如他们在看到区块主体后试图 MEV 盗窃,他们将需要提出另一个区块。他们的原始签名会被呈现出来→建议者因重复签名而被砍掉。
这种全区块策略可以达成验证者的去中心化,但它在中继者 / 建设者层面增加了显著的审查风险。假如验证者同意来自审查中继者的区块,他们将成为事实上的审查者。
假如审查建设者是最有利可图的建设者,那样建议者就被迫在以下两者之间做出选择。:
经济理性——同意价值最高的区块,即便被审查
利他主义——同意价值较低的区块,不进行审查
理想状况下,利他主义假设应该被完全删除或尽量最小化。
2. 顾客多样性
大部分矿工都在运行 Go 以太坊(Geth) 推广客户端,所以 Flashbots 容易地将其分叉,创建了 MEV-Geth。运行它是参与 Flashbots Auction 的唯一渠道。PoS 是一个提升顾客多样性的机会。MEV-Boost 边车可与所有共识和实行推广客户端互操作。
MEV-Boost 是中立的基础设施:
中继者——可以在任何限制或方案下自由运行 ( 比如,审查 / 不审查,「公平」订购 / 最大收益等 )。中继者可以根据我们的意愿同意建设者的区块。
建设者——可以自由地运行任何他们喜欢的方案,并部署到任何他们信赖的、想同意他们的区块的中继者。
验证者——可以自由运行 MEV-Boost 或不运行。他们可以自由地用任何他们想要的推广客户端。可以参考我们的意愿自由地连接到更多或更少的中继者。MEV-Boost 是一个有效的中继者聚合器,它从建议者选择的中继者中选择最有利可图的出价。
MEV-Boost 不审查 OFAC 买卖或三明治买卖。它只不过允许建议者将构建外包,从与他们匹配的中继者中进行选择。
审查
以下是我对审查的讨论框架:
薄弱的审查=延迟但最后被纳入。假如 50% 的验证者不包括 OFAC 买卖,那样平均而言,它们将在 2 个区块 (24 秒 ) 后被纳入。若是 90% 审查,它们将在 10 个区块 (120 秒 ) 后被纳入,以此类推。
严格的审查=被审查的买卖不被包含在链上。在 Gasper 中,这需要 51% 的验证者不只要审查他们自己区块的 OFAC 买卖,而且还要主动忽视所有包含它们的新区块。
验证者好像没火烧眉毛的审查威胁。他们好像采取了如此的立场:他们没义务审查 OFAC 买卖。假如需要,这可以通过用户激活的软分叉或削减来解决,但这不是我在这里的主要焦点。
火烧眉毛的审查威胁处于中继者 / 构建者层面。这主要来自运行最大型中继者和建设者的 Flashbots。然而,其他中继者也会进行审查——它们只不过市场份额较低,其中包含:
bloxRoute「受监管的」中继者
Blocknative
Eden Network
Non-censoring 中继者:
bloxRoute「收益最大化」中继者
bloxRoute 的「伦理」中继者
Manifold Finance
我将重点讨论怎么样在这个层面上减轻威胁。
验证者该如何做?
之前我写了这个帖子,但近期我又在考虑这个问题。我仍然有类似的感觉——我觉得最好是运行 MEV-Boost,但只用非审查的中继者。
说实话,假如我是一个验证者,我宁可根本不运行 MEV-Boost。Flashbots 是最可信的实时中继者 / 建设者运营商,所以我在用它们中的一些时会感到不舒服。但积极促成更多的审查规范是有害的。
所以运行个人推广客户端听起来很好,也比较容易,但我觉得最好还是和那些其他非审查中继者一块运行 MEV-Boost。不然,低使用率又会带来负面的外部原因 (pga 等 )。除此之外,运行它的验证者将比不运行它的利他验证者赚得更多——他们将在足够长的时间内系统地增加市场份额,挤掉利他的验证者。
忽略 MEV 并不会让它消失,大家以前就见过这样的情况。
更低的 Flashbots 中继者使用率可能意味着更少的审查。在写作本文时 - MEV-Boost 的使用占验证者的 42%,而 Flashbots 正在构建~60% 的 MEV-Boost 区块= ~25% 的ETH区块在那里被审查。MEV-Boost 的使用率也在稳步上升。现在,来自其他中继者的审查很少 ( 它们只不过没有意义的市场份额 )。
事实上,我不觉得「更少的审查」的不同之处。假如你的审查率是 20% vs. 40% vs. 60%,那样这类 OFAC 的地址就会被审查,他们需要等待。假如审查率上升,他们就会多等一会儿。
然而,我确实觉得,从信号的角度来看,这是尤为重要的。ETH应该向世界传达,这种行为不符合大家的价值观,而且不会被容忍的。
协议如何做?
不幸的是,上述「只须不要用 Flashbots 中继者」的解决方法,依靠的是建议者的利他主义。假如 Flashbots 过去构建过最有价值的区块 ( 他们一般会如此做 ),验证者就会主动选择不用它们来赚更少的钱。想同意被审查区块的验证者将第三按比率获得市场份额,而有意义的利他主义根本不是一个可持续的长期策略。大家需要更好的协议设计。
EnshrinedPBS 和 crList
当 PBS 被内置到协议中时,中继者就会消失。建设者将通过协议内拍卖直接与建议者进行交互。建设者承诺无条件支付,消除去信赖的需要。一旦建议者签署了建设者发送的区块头,他们就能得到有关的出价 ( 即便建设者随后披露了一个无效的区块体或完全扣留它 )。
crLists 对这种能力进行了检查。确切的达成是一个开放的设计空间,但这里有一个「混合 PBS」的简化概述。建议者指定一个清单,列出他们在 mempool 中看到的所有符合条件的买卖,建设者将被迫将它们包含在内 ( 除非区块已满 ):
建议者发布一个 crList 和 crList 摘要,其中包含所有符合条件的买卖。
建设者创建一个建议的区块,然后提交一个包括 crList 摘要的哈希值的出价,以证明他们已经看到了它
建议者同意中标者的出价和区块头 ( 他们还没看到区块体 )
建设者发布他们的区块,并包括一个证据,证明他们已经包括了来自 crList 的所有买卖,或者区块已满。不然,这个区块将不会被分叉选择规则所同意。
认证者会检查发布的主体的有效性
请注意,你事实上也可以在 enshrined PBS 之前达成 crList 的某些版本,尽管它看着会有所不同。这里有一个来自 Flashbots 的 Quintus 提出的建议。在 enshrined PBS 之前,替代 crList 提案也在进行中。应该优先考虑某些形式的纳入清单,甚至可能是一些最小形式的 enshrined PBS。期待这里会有更多的建议。
Barnabé提供了另一个类似的想法。本质上,建议者可以为区块创建一个前缀,以包括顶部的其他审查买卖,,然后建设者可以构建剩下的部分 ( 或者假如没审查的买卖要包含的话,可以构建整个区块 )。
用 EigenLayer 通过 MEV-Boost 保留区块建议者代理
另一种办法返回建议者的代理以附加买卖。该策略借助 EigenLayer 来增强 MEV-Boost,从而增加其审查阻力。
EigenLayer 是一个「重塑」的集合,预计将在明年晚些时候上线。选择加入 EigenLayer 的ETH验证者通过将验证者提取地址设置为 EigenLayer 智能合约,使自己遭到额外的大幅削减条件的约束。
协议可以无许可地部署在 EigenLayer 之上,并试图勉励这类验证者选择用相同的质押来保护我们的解决方法 ( 除去ETH )。验证者选择加入他们所选择的任何 EigenLayer 应用程序。它们可以由于违反应用程序的规则而被砍掉。这使得其他协议 ( 无论是新的跨链桥、数据可用性层,还是其他任何东西 ) 可以直接借助ETH的经济安全子集。
那样,这怎么样适用于 MEV-Boost 呢?选择这个结构的参与者实行了以下操作:
建议者用 EigenLayer 重新质押他们的 以太币
建设者将他们的区块 (builder_part) 连同所含买卖的 Merkle_root 和他们的出价一块发送给中继者
中继者通过存储买卖来提供数据可用性 (DA)。Relay 将 merkle_root 和出价发送给建议者,以获得最有利可图的有效区块
建议者从所有连接的中继者中选择最高的出价
建议者在当地打造他们我们的备份替代区块 B_alt
建议者向中标者的 merkle_root 发送一个认证,并将其与承诺的 commit_B_alt( 不是区块头,可能是买卖根 ) 相连接,发送到我们的区块 B_alt 上
中继者显示包括基础买卖的 builder_part,并将其发送给建议者
建议者构建一个包括 builder_part 的新区块,并附加一个额外的 proposer_part( 假如他们看到想要包括的其他买卖,并且区块中还有空间 )。假如中继者未能释放基础买卖,区块建议者将建议他们构建的区块 B_alt。
假如建议者提出了 B_alt 以外的区块,建议者需要包括 builder_part,不然它们将通过 EigenLayer 被砍。这是他们需要遵守的附加条件。这消除去信赖建议者的必要性——假如他们在看到基础买卖后试图窃取 MEV,他们将不能不建议一个 B_alt 以外的区块,并将被砍掉。
这使得建议者可以将区块构建外包出去,以达成收益最大化,同时仍然附加审查过的买卖。建议者不再需要在利他主义和经济理性之间做出选择。
假如最有利可图的建设者正在审查,而建议者没义务审查——主要方案是选择加入这个 EigenLayer 结构 ( 假设他们能同意额外的责任和 EigenLayer 智能合约风险 )。如此一来,他们可以同意最高价值的区块,并可能通过附加额外的买卖使其更有利可图。
注意,builder_part 最后可能只不过区块的一部分或整个区块。假如全部的 3000 万 gas 都被用掉,当然就永远不可以保证可以被包括在内。不过 EIP-1559 确保了大部分时候都有多余的空间可用。
你了解的魔鬼 vs.你不了解的魔鬼
假设 Flashbots 关闭。你所知道的魔鬼已经被挫败——大部分审查或许会消失。听起来很好吧?
但目前你不了解的魔鬼或许会出现。有一个权力真空需要被填补,而其他的建设者会去填补它。大家面临的风险是,另一个建设者容易地夺取了王位,并巩固了自己作为主导建设者的地位,这或许会导致更多的伤害。
在我看来,这样的情况发生的最大风险源于排他订单流 (EOF):
建设者可以确保特定的订单只发送给他们 ( 比如,承诺不给前面的用户,并对后面的价值给予回扣 )。大家可以看到这方面的一些早期例子。然后他们可以出价更高,取得更多区块,并证明更多的排他性协议。
一个集中的区块建设者可以导致紧急的破坏:
抽租
角逐性市场确保了最低的抽租。用户因其所提供的价值而得到公平的补偿,建设者将剩余的 MEV 出价给建议者。现在看着很好——建设者争夺市场份额,几乎把所有捕获的 MEV 都出价给验证者。即便是处于相对主导地位的 Flashbots 也将所有收益都转给了验证者。
EOF 则相反。一个占主导地位的建设者会遭到勉励去抽租——他们仅需出价高于其他建设者所能获得的数额。更多的 EOF 扩大了与其他建设者的这一差距。
在这个 EOF 周期的开始阶段,建设者可能提取的极少——合理补偿用户是确保 EOF 最容易的办法之一。然而,一旦打造了垄断地位,建设者就会被勉励去抽租。他们也被授权这么做——当他们建造的区块比率越高时,转换本钱就会增加。
比如,钱包向一个建设者发送 EOF,由于他们得到了公平的补偿。但目前,建设者的规模愈加大,他们几乎建造了所有些ETH区块。然后他们降低了他们的成本回扣。钱包想撤回它的 EOF,去其他地方。然而,向其他建设者发送意味着区块纳入的等待时间长得让人很难置信,或者他们没办法完全取得区块。钱包被卡住了,而建设者继续提取。
审查
第一,crList 这种花哨的东西并非实时的。现在,互联网特别容易遭到审查规范的影响。
在下面的例子中,我假设这个市场只包含两个建设者:
B₁=抗审查的建设者
B₂=有审查权的建设者
假如 B₂在今天获得了非常大的市场份额,他们就能实行有意义的弱审查——大家已经看到了这一点。然而请记住,这并非强审查。
一个拥有理性验证者的完全角逐市场在任何状况下都能预防就算是微弱的审查。在其他条件相同的最好互联网条件下,出价 B₁≥出价 B₂。两者都可以包含公共 mempool 买卖,但只有 B₁还可以包含 OFAC 买卖。因此,角逐性 PBS 对审查规范的抵抗力只有 1/N 的建设者假设。
当然,这不是现实——建设者有不一样的订单流和算法,从而致使不一样的投标。然而,这了解地说明了为何大家应该争取一个角逐性的市场。假如 B₂因 EOF 或其他缘由控制了过多的市场份额,他们可以进行有意义的审查。
假如他们持续建造最有价值的区块,你就会依靠于有效的验证者利他主义来防止审查。期望他们会忽视审查中继者,只连接到提供来自非审查建设者区块的中继者。但从长远来看,这可能是不可持续的——作为一个诚实的验证者的本钱应该减少到~0( 或者理想状况下,非审查更有利可图 )。
请注意,crList 并没完全消除这种可能性。假如 B₂持续产出价值最高的区块,那样广播含有 OFAC 买卖的 crList 的建议者了解他们将没办法同意最有利可图的区块。经济上的理性决定是广播一个空的 crList。然而,假如因为市场角逐,出价 B₁和出价 B₂之间的差异可以忽视不计 ( 甚至有益于 B₁),那样验证者将发布 crlist 是一个适当的假设。
EOF 对审查阻力构成了重大威胁——它可以迫使验证者在诚实和经济上的理性行为之间做出选择。这抑制了诚实的行为,并允许审查参与者通过增加市场份额获得更高的奖励。这应该被防止。
降低建设者革新
PBS 是建设者提供革新新功能 ( 比如帐户抽象、预确认 ) 的机会。
有竞争优势的建设者被鼓励在功能上进行革新,以吸引用户的 OF。而根基稳定的建设者则不然。即便另一个建设者开始提供更好的功能,转换本钱可能太高或完全不可达成 ( 对其他建设者来讲,包括买卖的时间很长、永远没办法取得区块、PFOF 买卖等等 )。
请注意,因为优越功能而获得 OF≠PFOF:
因为优越的功能而获得 OF——进入的障碍是提供新的功能。
PFOF——进入障碍是明确的支付,用户需要长期等待,甚至可能违反合同
容易地说,PFOF 在这里意味着排他性,但其功能却不是。假如某些建设者只提供理想的功能以换取 EOF,这将和 PFOF 一样不可取。
EOF 如何做?
我在这里就不太深入了,但一种可能的渠道是运行订单流拍卖。事实上,一些拍卖是为了实行用户订单的权利而进行的。他们因创造 MEV 和好的实行保证而获得公平价值。你可以进行公开拍卖,也可以以成本升级的形式进行隐性拍卖。
去中心化的建设者
这里基本的想法是让获胜的建设者本身成为一个去中心化的协议。这是一个很有趣的设计空间,可以对抗建设者集中化的威胁。
关于去中心化的建设者市场怎么样安全地共享订单流,还有一个更广阔的设计空间。
以下是 Flashbots 主页上声明的目的:
大家正在构建一个去中心化的区块构建互联网,以赋予用户权力,并最大限度地去中心化公共区块链。
Flashbots 如何做?
我理解 Flashbots 现在犹豫需不需要把钥匙交给其他建设者,我也确实相信那里的人都是出于好意。正如前面所描述的,其他一些建设者或许会试图用更可疑的动机来巩固我们的地位,并对互联网导致更大的伤害。这显然是不可取的。它可能更容易推进去中心化的建设者从一个优势地位运作。
但 Flashbots 会审查。且适用的法规仍然有点不了解,但这不是重点。假如 Flashbots 的持续运营 ( 包含审查 ) 带来的结果明显比其他方法更好,那样它们将符合ETH的长期最好利益。这种审查可能只不过雷达上的一个光点,在将来一年左右的时间里,伴随上述想法的充实和达成,它就会消失。
话虽这样,我觉得目前非常难在期望它能阻止其他人在将来进行审查的状况下,明确证明审查是正当的。
开源其建设者并引导市场
假如 Flashbots 不想或没办法退回中继者审查,我相信他们有责任进一步引导和支持其他不审查的中继者 / 建设者社区。他们已经在这方面采取了一些要紧的步骤,譬如在合并之前开放了他们的中继者。这是在 AGPL 下完成的——一种激进的 copy-left 复制许可,需要衍生品在公开环境下开发。
合乎逻辑的下一步应该是尽快开源他们的建设者 ( 第三在 AGPL 下 )。这将是减少建设者市场准基础知识槛的要紧一步,并将在非常大程度上表明他们的意图。这将直接把生态系统的健康置于他们的短期角逐优势之上。
研究
Flashbots 的研究应该继续专注于解决审查问题——去中心化的建设者、包括列表、共享订单流等。这类都是 Flashbots 的既定目的。
然而,非常难从外面的角度来看待这一点。现在,只有少数人在有效地决定整个ETH互联网是不是正在被大规模审查。支持任何拓展这项活动的公司,无论他们的营业额记录或既定目的怎么样,都非常难被合理化。
最近需要围绕这项研究获得重大进展并维持开放。
中继者运营
老实说,我在中继者方面反复考虑过——他们是不是应该运行它?我询问了 Vitalik、Justin Drake、Phil DAIan、Zaki Manian 和 Francesco D'Amato。
Vitalik 重申了一个选项——Flashbots 可以将中立的研究实体与企业运营实体分开。这消除去研究中的利益冲突,大家也不再需要质疑运营商的动机。大家只能容易地理解,他们和该范围的其他大多数人一样在为自己工作。如此做的缺点可能是,研究和商品部门一块创造了一个积极的反馈循环,产生了有意义的进展,而你或许会失去其中的一些东西。大家看到 MEV-Boost 刚开始是作为一项研究运行,后来由商品方推行。
假如他们只不过容易地停止运行他们的中继者,问题不会完全消失。审查率或许会降低,但其他审查中继者或许会填补这一空缺。伴随时间的推移,不可预见的新审查威胁也会会出现。Flashbots 作为中继者 / 建设者的参与对 MEV-Boost 的总体使用有两个影响:
增加使用——作为靠谱的服务提供商,Flashbots 的存在增加了边际使用率。但伴随时间的推移,这种好处或许会渐渐降低,由于其他中继者和建设者会解决他们的问题。要紧的是,Flashbots 可以而且应该积极努力使之成为现实,以各种可能的方法提供支持。
使用降低——Flashbots 的存在减少了对该系统的总体信赖,这至少阻止了一些进一步的使用。我觉得可以合理地推断,假如没中继者或建设者的审查,使用率会更高。
假如他们要继续运行他们的中继者,最后在某种程度上对验证者的百分比施加一个上限应该是适当的。第三强调,事实上无论哪种方法,审查规范都非常薄弱。但我仍然看到 1% 和 99% 审查之间的信号有非常大有什么区别。假如被审查的ETH区块的百分比继续攀升,并且没达成新的变化来缓解这一点 ( 无论是 crLists, EigenLayer 建议等 ),这将是最为需要的。
最后的考虑
我在这里提到 Flashbots 主如果出于以下几个缘由。它们当然是审查的主要出处,但它们也为ETH生态系统带来了数目惊人的积极工作。除此之外,我相信假如他们要在中立的社区建设者和传统的企业运营商之间站稳脚跟,他们对生态系统负有重大责任。最后,由于他们非常聪明,所以他们或许会创建一些非常酷的东西。
需要明确的是,我在这里不是要进行更多的指责,更不是要谈论过去的行为。大家的状况就是如此。我只不过想看到这个问题得到解决。这需要围绕非常重要的参与者的最好行动策略进行富有效果和开放的讨论。Flashbots 就是其中之一。
不过,我也强烈恳请其他中继者和建设者以诚信的态度运营,并通过类似的行动尽量多地支持生态系统。ETH和数字货币作为一个整体,可能有一个有限的窗口来达成这一点。