摘要
MEV Blocker 是一种 RPC 端点,它改变已签名交易在进入区块之前的去向。你不再将原始交易广播到公共内存池,而是将其发送到私有中继或订单流拍卖,从而对抢先交易和三明治机器人隐藏交易,并且在许多设计中,将提取的部分价值返还给发送者。
这使得 MEV Blocker 成为一种路由决策,而不是链上功能。你保留相同的链 ID 和相同的签名流程;只需更换钱包或后端用于 eth_sendRawTransaction 的 RPC URL。读取、日志和状态查询仍然需要在后台使用常规全节点,这就是为什么团队通常将保护端点与标准 RPC 提供商(例如 OnFinality 的 RPC API)配对,用于所有非交易提交的操作。
本文解释了 MEV Blocker 的工作原理、它们能防范和不能防范哪些风险,以及如何决定是否通过它们路由用户交易——以及一旦采用后如何保持读取路径和故障转移的健康。
关键要点
- MEV Blocker 是一种 RPC 端点,它通过私有内存池或订单流拍卖路由已签名交易,而不是公共内存池。
- 它主要防范交易提交时的抢先交易和三明治攻击;它不改变共识、Gas 定价或你的读取路径。
- 保护端点通常特定于链,且往往专注于以太坊,因此在切换前请验证链 ID、支持的方法和回滚行为。
- 大多数设计仅拦截
eth_sendRawTransaction;eth_call、eth_getLogs和 trace 方法仍然需要常规全节点。 - 保留标准 RPC 作为后备,以免交易提交成为单点故障。
- 先在测试网或小额交易上测试,并在部署后监控包含率、回滚率和返利行为。
简短回答:MEV Blocker 是交易路由器
MEV Blocker 是一种 RPC 端点,当你想让交易避开公共内存池时,将钱包或后端指向它。你像往常一样在本地签名,然后将原始交易发送给 Blocker。Blocker 将其转发到私有中继、构建者网络或订单流拍卖,搜索者可以在那里竞标包含权。由于交易在包含之前不会在公共内存池中可见,机器人无法轻易抢先交易或进行三明治攻击。
重要的细微差别:Blocker 不是链、rollup 或共识变更。你的交易仍然在同一个链上以相同的链 ID 结算。改变的是你的签名和区块构建者之间的路径。
大多数 MEV Blocker 还充当部分退款机制。如果你的交易创造了后向运行机会,搜索者会为此付费,其中部分价值可以回流给你。确切的退款模型、回滚行为和隐私级别因端点而异,因此请阅读提供商的端点参考,而不是假设一种行为。
- 相同的链,相同的签名流程——只有提交 URL 改变。
- 保护适用于交易提交,不适用于读取、日志或 trace。
- 退款和回滚行为因端点路径而异,因此在依赖它之前进行测试。
决策指南:你的交易应该通过 Blocker 吗?
使用此表按工作负载而非按项目做决定。许多团队仅将交易提交路径通过保护端点路由,并将其他所有内容保留在常规 RPC 提供商上。
- 选择性路由:对有价值的用户交易提供保护,其他所有内容使用标准 RPC。
- 保留有文档记录的后备端点和超时设置,以便提交永远不会无限期挂起。
| 标准 | 检查内容 | 为什么重要 |
|---|---|---|
| 工作负载 | 交易是否在内存池中创造可见价值(交换、铸造、清算、NFT 掉落)? | 如果是,抢先交易和三明治风险是真实的,值得评估 Blocker。常规转账和管理交易通常收益甚微。 |
| 面向用户 vs 后端 | 交易是由最终用户在钱包中签名,还是由你的后端签名者签名? | 钱包级别的保护是用户可以选择的配置更改。后端提交需要你控制和监控的代码路径。 |
| 链支持 | Blocker 是否支持你的链 ID 和你调用的方法? | 保护端点通常特定于链;发送到错误的链或不支持的方法会静默失败或出现令人困惑的错误。 |
| 回滚策略 | 端点会丢弃回滚的交易,还是包含它们并收取 Gas? | 这会改变你的 Gas 核算和重试逻辑,尤其是对于机器人和自动化策略。 |
| 后备路径 | 如果 Blocker 缓慢、宕机或拒绝你的交易会发生什么? | 提交不应成为你产品的单点故障。 |
Blocker 实际防范什么——以及不防范什么
核心保护是针对那些否则会留在公共内存池中的交易的抢先交易和三明治攻击。通过在包含之前隐藏交易,Blocker 消除了机器人用来在你的交易周围插入交易的时间窗口。
它不会从系统中消除 MEV。价值仍然可以通过后向运行提取,而 Blocker 的拍卖是价值被定价的地方之一。它也不能保护你免受自己交易中的糟糕定价、合约级漏洞或重组的影响。而且它不能替代健康的读取路径:如果你的应用无法可靠地读取状态或日志,提交上的保护也无法挽救用户体验。
- 将保护视为一层:它减少特定的攻击面,不能替代交易卫生。
| 标准 | 检查内容 | 为什么重要 |
|---|---|---|
| 威胁 | 是——交易在包含前隐藏 | 团队采用 Blocker 的主要原因。 |
| 后向运行价值捕获 | 部分——通过拍卖和可能的退款 | 退款模型各不相同;请查看端点参考。 |
| 失败交易的 Gas | 取决于端点回滚策略 | 影响自动发送者的成本和重试逻辑。 |
| 重组和最终性 | 否 | 处理确认仍然是你的责任。 |
| 读取路径可靠性 | 否 | 与标准 RPC 配对用于 eth_call、eth_getLogs 和 trace。 |
将保护端点接入钱包或后端
对于最终用户,更改是钱包中的网络条目:相同的链 ID、相同的货币符号、相同的浏览器、不同的 RPC URL。对于后端,更改更窄——你通常保留常规提供商用于读取,仅将原始交易发送到保护端点。
下面的示例展示了 JavaScript 中的拆分模式。它使用标准 JSON-RPC 提供商进行读取,并使用单独的保护 URL 进行提交。将占位符替换为你选择的 Blocker 为你的链发布的端点。
- 保留两个客户端:读取客户端和提交客户端。
- 在提交上设置明确的超时,如果保护端点没有响应,则回退到标准 RPC。
- 记录每笔交易使用的端点,以便以后归因包含和回滚行为。
| 标准 | 检查内容 | 为什么重要 |
|---|---|---|
| 配置项 | 必须与目标链完全匹配 | 不匹配会将资金或交易发送到错误的网络上下文。 |
| 读取 RPC URL | 你的标准提供商端点 | 用于 eth_call、eth_getLogs、eth_getTransactionReceipt 和 trace。 |
| 提交 RPC URL | Blocker 为你的链记录的端点 | 只有原始交易提交应该到这里。 |
| 后备 URL | 你的标准提供商端点 | 防止提交中断阻塞你的产品。 |
| 超时 | 几秒钟,根据你的用户体验调整 | 避免保护路径降级时无限期挂起。 |
OnFinality 在保护端点旁边的位置
MEV Blocker 回答一个问题:已签名交易去哪里?其他所有内容——余额读取、事件日志、合约调用、交易收据、trace 数据和 WebSocket 订阅——仍然需要全节点。这就是 OnFinality 通过其 RPC API 和 专用节点 在 支持的网络 上提供的层。
常见的生产形态是:用于 eth_sendRawTransaction 的保护端点、用于读取和收据的托管 RPC,以及当你需要可预测吞吐量或自定义内存池策略时使用的专用节点。如果你仍在选择读取侧,RPC 提供商选择指南 涵盖了工作负载、归档、trace 和故障转移标准。
在承诺之前进行两项实际检查:确认你保护的链在读取侧受支持,并确认你的后备路径是你已经信任用于提交的提供商。查看 RPC 定价 以根据预期请求量确定读取侧的规模。
- 保护端点:仅提交。
- 托管 RPC:读取、日志、收据、订阅。
- 专用节点:吞吐量控制、自定义策略、私有对等连接。
部署和监控清单
切换提交路径是生产变更。分阶段推出并观察信号,以判断保护是否按预期工作。
- 从一小部分流量或可用的测试网开始。
- 对后备频率和包含率下降发出警报,而不仅仅是错误。
- 任何更改后重新阅读提供商的端点参考;保护模式之间的路径和策略可能不同。
| 标准 | 检查内容 | 为什么重要 |
|---|---|---|
| 信号 | 交易在合理数量的区块内落地 | 突然下降表明保护路径降级。 |
| 回滚率 | 稳定或低于之前 | 回滚策略变化可能改变 Gas 成本。 |
| 提交延迟 | 在你的超时预算内 | 提交缓慢比读取缓慢更影响用户体验。 |
| 后备频率 | 低且有解释 | 频繁后备意味着主路径不可靠。 |
| 退款或返利行为 | 与提供商记录的模型匹配 | 意外的退款或完全没有退款表明端点配置错误。 |
关键要点
MEV Blocker 是交易提交的路由选择,不是链升级。它对公共内存池隐藏已签名交易,以降低抢先交易和三明治风险,一些设计将提取的部分价值返还给发送者。它不能修复你的读取路径、Gas 定价或确认处理。
实用的模式是拆分堆栈:用于原始交易提交的保护端点、用于读取、日志、收据和 trace 的可靠标准 RPC,以及后备路径,以便提交永远不会成为单点故障。在部署前测试回滚策略和退款模型,然后监控包含率、回滚率和后备频率。
如果你需要该堆栈的读取侧,请从 OnFinality 的 RPC API 开始,查看 支持的网络,并查看 RPC 定价 以根据你的工作负载确定规模。
- 保护是一层;读取路径的可靠性是另一层。
- 验证每个端点的链 ID、支持的方法和回滚策略。
- 始终保留有文档记录的提交后备方案。
常见问题
MEV Blocker 和私有 RPC 一样吗?
它们有重叠。MEV Blocker 是一种具有 MEV 特定路由的私有提交路径,通常包括订单流拍卖和退款。私有 RPC 可能只是隐藏交易而没有拍卖。请查看提供商的文档以了解提交后会发生什么。
使用 MEV Blocker 会改变我的链 ID 或签名流程吗?
不会。你为同一条链签署相同的交易。只有用于原始交易提交的 RPC URL 改变。读取和收据仍然来自标准节点。
MEV Blocker 能阻止所有 MEV 提取吗?
不能。它主要降低提交时的抢先交易和三明治风险。后向运行和其他形式的价值提取仍然可能发生,而 Blocker 的拍卖是价值被定价的地方之一。
如果我使用 Blocker,还需要常规 RPC 提供商吗?
是的,在大多数设置中。像 eth_call、eth_getLogs、eth_getTransactionReceipt 和 trace 调用这样的方法需要全节点。像 OnFinality 的 RPC API 这样的托管 RPC 覆盖了那一层。
如果保护端点宕机了怎么办?
如果你没有后备,提交会停滞。配置超时和回退到你信任的标准 RPC,并对后备频率发出警报,以便及早发现降级。
每笔交易都应该通过 Blocker 吗?
通常不是。路由有价值的用户交易,那里抢先交易风险是真实的。常规转账和管理操作通常收益甚微,并增加额外的依赖。