EN
Web3快讯

签名正确,结果却可能错:Ethereum 原生交易断言如何保护钱包与 Agent

Ethereum 正研究原生交易断言,让交易在执行后检查余额、授权、代码和事件的净变化;若结果偏离签名意图则整体回滚。

2 分钟阅读 106 阅读
Ethereum 交易最终状态通过原生断言验证

用户签署了一笔 Ethereum 交易,并不代表执行结果一定符合用户原本的意图。签名确认的是调用与参数;真正结果还取决于交易执行时遇到的合约代码和链上状态。

Ethereum Foundation 在 2026 年 10 月 5 日介绍了原生交易断言的研究方向:让只读规则在交易动作执行后检查完整净状态变化。如果余额、授权、代码或事件不符合签名规则,整笔动作回滚。

从“我签了什么”升级为“最后必须得到什么”

现有钱包模拟能预览结果,但前端被入侵、状态变化或复杂合约路径仍可能让结果偏离预期。交易断言可以要求最低收到数量、限制最大支出、禁止新增授权、保护账户控制逻辑,或只允许指定状态发生变化。

断言与动作一起签名。它比较交易开始和结束状态,而不是只检查中间某次调用。若规则失败,执行体回滚,但交易仍以失败状态进入区块,Gas 仍由付款方承担。

EIP-7906 仍是候选,不是已上线功能

EIP-7906 基于 EIP-8141 的 frame transaction,增加只读 POST_TX 阶段,并提出 TXTRACE、TXDIFF 和 EVENTDATACOPY 三个操作码来读取净状态变化与事件。EIP-8141 计划进入 Hegotá,而 EIP-7906 目前只是“Considered for Inclusion”,尚未确认纳入升级。

这一区别很重要:钱包和协议现在可以参与设计与实验,但不能把它当作主网已有的安全保证。

对 AI Agent 尤其重要

当 Agent 获得链上操作权时,权限控制通常描述“可以调用哪个合约、最多花多少、有效多久”。交易断言进一步约束“调用后必须得到什么”:例如兑换后最低余额、未使用代币必须退回、临时授权必须撤销。

不过规则来源同样关键。被攻陷的前端也可以生成一个放行攻击的断言。可靠规则必须来自独立确认的用户意图、账户长期策略或攻击组件无法修改的协议逻辑。

边界与代价

  • 断言只能保护单笔、单链交易,不能自动覆盖跨链全过程。
  • 旧的不可升级合约未必能要求调用方携带特定断言。
  • 失败交易仍消耗 Gas。
  • 规则写错可能阻止合法操作,规则过松又无法提供保护。

交易断言的价值,是把钱包安全从“读懂调用”推进到“强制结果”。对于越来越多由 Agent、solver 和批量执行器发起的交易,这可能成为比弹窗提示更可靠的最后一道防线。

主要来源

发表评论