一笔后量子交易的一生

以太坊执行层的量子升级(3/5)

  1. 以太坊账户抽象的安全骨架
  2. 以太坊原生账户抽象的交易解剖
  3. 一笔后量子交易的一生
  4. 一笔交易身边的世界
  5. 全网重放的机器
目录

前两篇把机器造好了。第一篇讲清楚为什么「什么算有效交易」的判定权会从协议滑进账户代码,以及付款分界线如何把系统分成严防死守的线前与放任自流的线后;第二篇拆完 EIP-8141 的帧交易本体,协议以 0xaa 的名义亲自登门,账户用一条 APPROVE 指令作答。这一篇把一条真正的后量子签名放上这套轨道,从账户的出生一路走到交易落块,再看清楚两件更大的事:同一条签名在两条车道上为什么差出百倍的价格;以及当「地址等于私钥」的等式被拆掉之后,信任从哪里来。

主线一句话:账户抽象把所有权从地址派生里解放出来,变成「代码对 APPROVE 说了什么」;一条 Falcon 签名的密码学工作量从头到尾没有变,变的是它在哪条车道上被执行、被谁计价、被谁信任。

账户的诞生:代码怎么长到地址上

第一篇讲过,状态树里每个账户都是同一个四元组,没有类型字段,EOA 与合约的全部区别只是 codeHash 是不是空哈希。所以「给账户装代码」这件事,机械上就是「把一个非空的 codeHash 写进状态条目」。协议史上能做到这一步的原语只有两个,一切系统都是它们的组合。

原语甲是创建式:CREATE 或 CREATE2 执行 initcode,把运行时字节码写到一个由创建规则算出来的新地址上。CREATE2 的地址等于 keccak(0xff ‖ 部署者 ‖ salt ‖ keccak(initcode)) 的后 20 字节,地址是算出来的,从未有过对应的私钥。原语乙是委托式,7702 引入:在一个已存在的 EOA 地址的 code 位写入 23 字节的委托指示符,0xef0100 ‖ 目标地址,不是真码,是指路牌;被调用时 EVM 取目标代码,在这个 EOA 自己的上下文里执行。

三代方案是对这两个原语的三种打包。4337 用原语甲:工厂合约 CREATE2 出一个全新地址上的合约账户。这里有一个必须校正的直觉:4337 从头到尾没有「给 EOA 装码」这回事。 4337 账户是崭新地址上的新合约,旧 EOA 只是一把被新账户逻辑选择承认的钥匙,用户做的不是升级,是搬家,资产要一件件迁过去。7702 用原语乙,第一次在原址动手术,代价第一篇讲过:手术的授权用 ECDSA 签,而且旧钥匙在术后仍然握着再次手术的权力,这就是那个后门。8141 不发明新原语,它把两个都收编:新账户走创建式,用 deploy 帧配合 EIP-7997 的确定性工厂预部署,而且 deploy 帧在认证之前执行,靠「地址承诺 initcode」防身,所以 initcode 必须写成任何人代为部署都安全的形状,这等于把 4337 的反事实部署从应用层惯例升格成了协议原语;存量 EOA 则照旧走委托式。

8141 还带来了第三种存在方式,注意它不是第三个原语:default code。一个没有装码的普通 EOA 直接发帧交易时,协议为它凭空合成一段虚拟行为,在 VERIFY 模式下找到一条 SECP256K1 签名并代为 APPROVE。它的 codeHash 仍然是空哈希,状态一个比特都没写,不是真码,不是指路牌,是运行时的幻影。也正因为是协议合成的,它只认 ECDSA,与后量子无缘:想用 Falcon,必须真的装码。

于是一个装了 Falcon 验证代码的账户 A,有两种可能的出身,对应两种量子暴露面。原生智能账户:code 位是验证器字节码(或者一块指路牌指向共享实现),地址是全新的 CREATE2 产物,从未有过私钥,账户层的量子暴露面为零,最干净的形态。迁移的存量 EOA:code 位是 0xef0100 ‖ 实现地址,旧的 ECDSA 私钥仍然存在,指路牌可以被它随时改写。8141 让迁移账户的日常操作可以完全不碰 ECDSA,但拆不掉那个改写权;真正切断要等未来的协议级步骤,第一篇提过的 ECDSA 失活提案族。执行侧的配套也齐了:帧循环按 codeHash 三分派,空哈希给 default code,指示符沿指针取码,常规码直接执行;EIP-3607 那条「有码账户不得发起交易」的老规矩为帧交易松了绑,SENDER 帧的发起人本来就该是代码账户。

账户的诞生:两个原语,三种打包,一个运行时幻影

所有权:钥匙搬了家,不是没有钥匙

原生智能账户常被描述成「没有私钥的账户」,这个说法差半格。它的地址确实不派生自任何私钥,地址是 initcode 的影子;但用户手里当然有钥匙,那把 Falcon 私钥好好地待在钱包里。变的是绑定方式。传统 EOA 的所有权烧死在地址派生里:地址就是公钥的影子,协议硬编码「能对上这个地址的签名才算数」,换钥匙等于换地址等于搬家,永不可变。智能账户的所有权是一份可变状态:存储槽里的公钥,加上代码对它的解释。

新的所有权定义只需要一句话:能让 A 的代码说出 APPROVE 的人,就是 A 的主人。 链上如此,VERIFY 帧问的就是这个;链下同构,ERC-1271 的 isValidSignature 还是去问同一段代码。这个定义换来的第一份红利是原生密钥轮换:Falcon 参数要升级,或者干脆换到 ML-DSA,都只是一次存储写入,地址不变,资产不动。EOA 做不到,因为它的地址就是钥匙本身。

恢复:从数学死刑到设计空间

EOA 丢私钥是数学死刑,没有任何机制可救,这是链上「休眠账户」问题的根源。所有权一旦变成「存储加代码」,恢复就从不可能变成一份菜单。

菜单从最朴素到最花哨:可以不写任何恢复逻辑,与 EOA 同命,换来最小攻击面;可以社交恢复,存储里登记 N 个守护人的链上地址,M-of-N 联署加时间锁就能换钥,整个流程不出链,不需要邮箱;可以不活跃接管,备份键在主键沉默 X 天后获得接管权,主键随时可以取消倒计时,而且备份键可以是异构方案,主键 Falcon、备份键 ML-DSA 冷存,过渡期甚至可以备一把 ECDSA;也可以接第三方,托管共签、passkey(P256 已有 6700 gas 的原生定价)、用零知识证明验证邮件 DKIM 的 zkEmail 一系。值得注意的是位置变化:第三方从「系统强加的依赖」降格为「菜单上的一个选项」,接不接、给多大权限,由每个账户的代码自己说了算。

两盆冷水必须当场泼。第一盆:每一条恢复路径都是亲手给自己的房子加的第二扇门。守护人集合、备份键、接管逻辑,全都是攻击面,恢复机制的审计强度必须等同于主验证路径,否则主门装了量子锁、侧门虚掩着。第二盆更冷:如果恢复路径是 ECDSA 的,量子暴露面就从后门重新进屋了。 Falcon 主键再硬,攻击者破掉 secp256k1 的守护人或备份键,照样换走你的钥匙。这是 7702 后门问题的推广形式:量子迁移的完备性,等于枚举并升级这个账户的所有授权路径,主验证、恢复、守护人、备份键,一条都不能漏。签名敏捷性让部分迁移成为可能,也让「以为迁完了、其实没迁完」成为一种全新的失败模式。

五幕:一笔后量子交易走完全程

现在把主角请上台。账户 A 已经装好 Falcon-512 验证代码,存储里放着 897 字节的公钥,要给 B 转 100 ETH,自己付 gas,走 ARBITRARY 车道,也就是今天的 8141 落地即可运行的形态。授权语义的总纲先立在这里:不再是「ecrecover 恢复出的地址等于发送者」,而是「A 自己的代码在 VERIFY 帧里执行了 APPROVE」。

幕一,钱包构造与签名。链下,A 的代码还在沉睡:

chain_id = 1,nonce = 7,sender = 0xA11CE…
frames = [
F0: [VERIFY, flags 0x3, target 空(→A), gas_limit 2_100_000, value 0]
F1: [SENDER, flags 0x0, target 0xB0B…, gas_limit 40_000, value 100 ETH]
]
signatures = [ S0: [scheme ARBITRARY, signer 空, msg 空, signature 666 字节 Falcon] ]

S0 的三个空各有含义。signer 空:协议不认识任意方案,无从解析「签名者是谁」,这一位从定义上必须留空。msg 空:上一篇的自指符号,声明「我签的就是本交易的规范签名哈希」。signature 待填。流水线照上一篇的规矩走:按摘除规则算出规范哈希 H(S0 的签名座位按空计算),Falcon 私钥签 H,填入字节。钱包在这里有一条纪律,输出必须是规范编码的签名,原因到幕三揭晓。

幕二,内存池的岔路。节点的准入机器逐项放行,走到前缀模拟这一步:形状合法,单个自验帧是规定形状之一;但预算爆了,前缀 gas 上限总和加签名费等于 2,100,100,预算上限是 100,000,差着二十倍。公共内存池拒收。注意拒收的性质:这不是「无效」的判决,是「不替你传播」的谢客。这笔交易在共识层完全合法,卡住它的是传播层,上一篇结尾那个夹层的活体标本。出路是私有内存池,或者 MEV 通道直连区块构建者。这里有一道结构性张力值得记下:后量子用户被系统性地推向少数私有通道,与以太坊的抗审查叙事正面相顶。

幕三,全网执行。builder 把交易打包进块,此后每个全节点导入区块时都要重演一遍帧循环,gas 买的正是这份全网重复劳动。协议先过签名列表:S0 是 ARBITRARY,只做结构检查,收 100 gas,一个比特的密码学都不碰(下一节细讲这个「海关」)。然后帧循环发起 F0,执行上下文是 caller 等于 0xaa、ADDRESS 等于 A、STATICCALL 语义,A 的字节码被喂进 EVM 解释器,醒来干活:

① h ← TXPARAM(0x08) // 读出规范签名哈希:待验的消息
② SIGPARAM 读元数据:scheme 是 ARBITRARY?长度约 666 字节?
③ SIGPARAM copy:把 666 字节签名拷进内存
④ pk ← SLOAD 自己的存储槽 // 沙箱内合法:只读 sender 自己的存储
⑤ 规范编码检查:拒绝一切非规范形式与冗余字节
⑥ Falcon-Verify(pk, h, sig):哈希扩展、NTT、范数检查,约 2,000,000 gas
⑦ 通过 → 执行到指令 0xaa(APPROVE);失败 → revert → 整笔 invalid

第⑤步回收幕一的伏笔。ARBITRARY 空 msg 条目的签名字节已经被摘除出规范哈希,于是第三方可以改写这些字节而不惊动授权,规范哈希不动,交易哈希却变了。上一篇讲过 ECDSA 的 s 延展性和 EIP-2 用 low-s 修复它的历史;同一个幽灵在这里换了个形状回来,而这一次,强制规范编码的责任落在你自己的验证器代码头上。协议方案的延展性纪律写在方案表定义里(8141 的 SECP256K1 条目明写恢复位取值和 low-s);ARBITRARY 的延展性纪律,自担。

第⑦步的「谁在执行 APPROVE」值得再钉一次。APPROVE 是指令不是调用,嵌在 A 的字节码里;执行上下文里 ADDRESS 是 A,守卫恰是 ADDRESS 必须等于帧的 target。是 A 的代码、在 A 的身份下说出批准;0xaa 敲门,0x8141(本例没出场)看表,签字的从头到尾只有 A 自己。APPROVE(0x3) 落地的一瞬间,四件事同时完成:发送者已批准的标记置位,payer 设为 A,nonce 从 7 变成 8,按最大成本预扣 gas 钱。

幕四与幕五,转账与结算。F1 以 caller 等于 A 执行,100 ETH 划给 B。它的授权来源不是任何外层签名,这笔交易根本没有外层签名,授权来源就是幕三那一声 APPROVE。帧循环终检 payer 已落定,未用的 gas 退还 A,写下逐帧回执。主从关系值得看清:帧循环是主语,贯穿五幕始终;A 的代码只在幕三醒来一次,答完一道是非题就退场,它不知道 F1 有没有执行,甚至不知道这笔交易最终有没有进块。

幕外还有一组变奏,全部只是「往两个列表里加元素」。帧列表最前面插一个指向 0x8141 的过期帧,内存池就能静态读出这笔交易的存活期;把 F1 换成三个置了原子位的 SENDER 帧,就是「approve、swap、转出」的全成全败原子批;F0 后面加一个 target 指向 paymaster 的 VERIFY 帧,A 可以一分 ETH 不持有,用 USDC 付 gas;签名列表放两条空 msg 条目,一条 ECDSA 一条 Falcon,配上双验的账户代码,就是过渡期的混合双签,而且上一篇讲过,两位签名者可以并行、以任意顺序签署。格式不变,授权原语不变。

五幕:构造与签名、公共池谢客、VERIFY 帧验证、转账、结算

两条车道:同一个签名,两种价格

幕三里协议对 S0 只收了 100 gas,却在 F0 里烧掉两百万,这个反差就是两条车道的全部故事。

先看清 100 gas 买了什么。协议对 ARBITRARY 条目做的所有事情,是把它当数据检查,不当签名检查:四元组的 RLP 形状对不对,scheme 号认不认识,signer 是否留空,msg 是空或者恰好 32 字节且非全零,signature 是不是合法长度的字节串,按字节计费。像海关查运单,不开箱验货。作为对照,SECP256K1 条目的固定校验费是 2800,买的是一次货真价实的原生验签。这个差别的后果链值得想透:一条填满垃圾字节的 ARBITRARY 条目,在协议验签阶段完全合法,要到帧循环里被账户代码验出来、revert、整笔 invalid,才被抓住。ARBITRARY 把「识别垃圾」的成本从准入期的固定费,推迟到了执行期的模拟,这正是它必须被圈进十万 gas 前缀沙箱的原因;协议方案的垃圾,在准入阶段就被固定费拦下了。两条道对垃圾的拦截时机不同,对内存池 DoS 面的贡献就完全不同。

给 ARBITRARY 车道做个总评。压倒性的优点只有一个:无许可。 8141 落地当天通车,不需要任何后续 EIP,不需要方案表的治理斗争,不需要说服任何一个客户端团队;任何算法、任何参数集、任何混合组合、随时升级,全是账户自己的家务事。这是签名敏捷性的极致形态。次要优点是字节可自省,表达力没有上限。代价四条:验证 gas 百万量级;公共内存池永久谢客,只能走私有通道,在去中心化与抗审查上打折;永久丧失聚合资格,理由在下一节;延展性纪律自担。

真正值得反复咀嚼的问题是:同一条 Falcon 签名,同样次数的哈希扩展、NTT 模乘、范数检查,密码学工作量一个比特没变,凭什么两条车道的价格差出百倍?拆开是三个因子。

因子一,执行环境的单价。ARBITRARY 车道里,验证以 EVM 字节码运行:解释执行的 256 位栈机,原生代码里几纳秒的一次模乘,变成 MULMOD 加栈操作加内存读写,再背上高级语言的循环与边界检查。协议方案车道里,同一次验证由客户端原生代码执行,按真实 CPU 时间定一口固定价,ecrecover 的 3000 和 P256 的 6700 就是这张价目表的既有行。同一道菜,一边按「现场用乐高搭个灶台再做」计价,一边按「后厨明火直做」计价。写成成本模型最清楚:验证成本 C = α·哈希字节数 + β·模乘次数 + γ·链上字节数,两条车道的操作计数完全相同,变的只是 α 和 β 这两个环境系数,EVM 的 β 比原生大两到三个数量级。车道切换是一次系数变换,不是运算量变换。

因子二,计费哲学。逐 opcode 计量是对执行轨迹做积分,代码怎么跑、账单怎么长;方案表定价是治理定出来的一口价,查表了事。一口价的前提是实现被规范强制、性能可预测;而「这个价该定多少」需要论证,需要跨方案、参数对齐、口径干净的测量数据。这场定价论证,正是任何后量子方案进入方案表之前必须打赢的仗。

因子三,间接开销的分摊。EVM 车道独有的账单:验证合约的部署费,签名字节拷贝的内存扩展费,dispatch 开销,每个账户或每个库各自承担。原生车道一次实现、全网共享,连拷贝这一步都整个消失,字节对 EVM 不可见,读一下元数据 2 gas 了事。

还有一个对称项藏着漂亮的结构:γ,链上字节费,以及 EIP-7623 的字节地板,两条车道完全相同,666 字节就是 666 字节。顺带把账本分清:十万 gas 的预算约束的是验证前缀的执行 gas,7623 的地板烧的是付款人的钱包,不占预算,这是两本独立的账,都过关才是公共池的合格公民。有趣的是这两堵墙的关系。ARBITRARY 车道里,执行 gas 两百万,字节地板才两三万(Falcon 约 26,600,ML-DSA 走 ARBITRARY 约 96,800),地板完全不显形;一旦切到原生验证、执行侧降到几万 gas,地板反过来成了主导项。验证成本这堵墙倒下之后,字节地板这堵墙才浮出水面:两堵墙是接力关系,不是并列关系。 而字节墙的终极解法,聚合让 γ 趋近于零,只对协议方案车道开放。为什么,下一节说清。

两条车道:同一条签名,系数不同、计费哲学不同、命运不同

聚合门票:摘除与自省,两个开关定命运

上一篇末尾留了一张「聚合门票」:空 msg 条目的签名字节从定义上就不在任何人的哈希原像里,将来可以被整体删除、换成聚合证明,而不惊动任何授权。现在补上第二个开关,两个开关一起,决定每种方案的经济命运。

先把「为什么是删除」说透。聚合不是在区块里多附一份证明,而是用一份小的整体证据顶替 N 份大的逐笔签名,省下的正是那 N 份字节。链上字节是要花钱的,字节费和 7623 的数据地板都按字节计;逐笔签名不删,γ 一分都不会降,聚合就退化成白添一份证明的负优化。所以聚合的收益就是删除本身,真正的问题只有一个:这些字节删掉之后,会不会弄坏链上的什么东西。

第二个开关是自省:签名字节能不能被 EVM 里的代码读到。这句话的每个词都要抠准。「读到」的主语是 EVM 里执行的合约代码,不是人,也不是节点:原始字节在链下人人可见,区块浏览器里躺着,节点在准入时也必须拿它跑验证;「不可见」指的是 EVM 没有任何指令能把这些字节拷进合约的执行环境,于是任何合约的行为都不可能依赖它们的具体内容。还要把两样东西分开:住在账户存储槽里的是公钥,签名字节从来不住在任何合约的存储里,它们是交易体的一部分,随交易来、随交易走。规范的安排是可见性精确追随验证责任。协议方案由客户端在任何帧执行之前原生验完,EVM 需要知道的只是「第 i 位存在来自 S 对 M 的有效签名」这个事实,SIGPARAM 指令只提供元数据,字节本身对合约代码永远不可见。ARBITRARY 反过来:验证是你自己的 VERIFY 代码做的,代码要验就必须读到字节,所以拷贝指令只对它开放。

关键在于:可见杀死可聚合。 聚合是一次协议级重构,删掉逐笔的签名字节,换上一份等价的整体证据,它安全的前提是链上没有任何东西依赖被删的部分。协议方案满足这个前提:字节不可观察,只有有效性事实可观察,而事实可以由任何等价证据担保。ARBITRARY 不满足:已部署的代码在主动读字节,删了就崩;而且协议无从分辨哪些 ARBITRARY 字节是「可聚合的签名」、哪些是代码要用的任意数据。字节一旦暴露给图灵完备的代码,就成了永久的承重结构,这是 Hyrum 定律的协议版。「ARBITRARY 永不可聚合」是这条逻辑的结论,不是一条可以谈判的规定。

聚合的钩子其实已经埋好了,做个思想实验。假设未来 ML-DSA 进了方案表,某个区块里一千笔交易各带一条空 msg 的 ML-DSA 条目,raw 签名字节合计约 2.4 MB。区块构建者把这些字节全部删掉,换上一份区块级的聚合证明。每一笔交易的规范签名哈希纹丝不动,因为空 msg 的字节从来不在任何人的原像里;用户的授权意图完好无损。缺的只是「证明放在哪、谁来验」的后续规范,而最难改的那条不变量,「删字节是语义保持变换」,已经被今天的格式提前保证了。对照第一篇讲过的 4337 聚合器:同一个思路,但那是合约层的接口约定,信任要靠质押按住;8141 把它下沉进了交易格式本身。

这里顺手掉下一个安全结论。ARBITRARY 空 msg 条目的签名字节既被摘除又可自省,于是第三方改字节不动授权、却能改写交易哈希,验证器必须强制规范编码、拒绝一切冗余字节,否则交易的标识符可以被任意改写。于是一件本来属于标准合规的小事升了格:Falcon 压缩编码的规范性、ML-DSA 编码的唯一性,在这条车道上不是工程洁癖,是防交易哈希延展的协议级安全要求。EIP-2 当年对 ECDSA 做过的事,后量子家族的每一个成员都要重做一遍;编码规范性是以太坊用真实事故换来的、每代签名方案都要重付一次的税。

验证器的信任从哪里来

ARBITRARY 车道给了账户完全的自由。自由的另一面是一个朴素的问题:那段 Falcon 验证代码,凭什么信?

先把架构摆对。委托目标通常不该是裸的验证器,而是两层:

A 的 code 位:0xef0100 ‖ 账户实现合约
│(以 A 的身份运行:能 APPROVE、能动一切,按完全可信审计)
账户实现合约:密钥管理、恢复逻辑、帧检查、APPROVE
│(普通 CALL:纯函数问答,拿回一个 bool)
FalconVerifier:无状态纯验证器,bytes in → bool out

上层握着「以你的身份说话」的资格,审计标准是完全可信;下层只是一个被 CALL 的数学函数,碰不到任何状态。下层的标准化接口已有雏形,ERC-7913:账户存一对「验证器地址加公钥」,验证器全网共享,密钥从此不再绑定地址。

FalconVerifier 该用哪个地址?先立一个反直觉的事实:不存在、也不需要「协议官方」的 FalconVerifier,这正是 ARBITRARY 车道「无许可」三个字的定义。 来源有三种,对应三种信任模型。第一种,自己部署:自己编译、自己 CREATE2、委托指向自己的实例,主权最大化,信的是自己的审计与构建链,代价是部署 gas 和自建信任的全部负担。第二种,社区共享单例,现实世界的默认:规范实例部署一次,千万账户共用,Safe 的单例和 WETH 都是这个模式。第三种,协议官方化,那其实就是换车道:验证逻辑进客户端,地址问题整个蒸发,「官方部署一个地址」这个需求的终极答案不是某个地址,是方案表里的一行。

共享单例的「可信」从哪里来?这张清单读起来会非常眼熟。不可变性:无 owner,无升级路径,无外部调用依赖,部署即封棺。字节码可验证:源码公开,编译器版本与优化器配置钉死,任何人可以重新编译、比对链上 codeHash;可复现构建在这里不是工程洁癖,它本身就是信任的建立机制。确定性地址:CREATE2 让地址承诺 initcode,知道规范地址约等于知道代码,只要信工厂;EIP-7997 把工厂做成协议预部署之后,最后一环也去了信任,还附赠跨链同址。地址即指纹。审计与形式化验证:对无状态纯函数的合约,字节码级的正确性证明可行而且值得做。钱包白名单:主流钱包已经对 7702 的委托目标做白名单,普通用户的信任决策被钱包软件预筛了一层。最后一盆冷水照旧要泼:存量 EOA 的天花板。委托这个动作本身是 ECDSA 授权的,旧钥匙随时可以改写指路牌;上面整张清单的努力,对迁移账户而言,天花板始终被那把旧钥匙压着。

信任的三段迁移

把整个系列走到这里的线收成一条弧。

EOA 的时代,信数学。地址即钥匙,协议硬编码一切:没有恢复,没有轮换,没有选择,但也不需要信任任何人,一条椭圆曲线方程说了算。ARBITRARY 车道的时代,信社会过程。开源、审计、确定性部署、可复现构建、白名单,自由的代价是自己组装信任。协议方案的时代,信共识。验证器进了客户端,信任由分叉背书,与 ecrecover 同一个待遇。从第二段到第三段的桥,由三样东西搭成:可信的跨方案基准数据,参数对齐、口径干净的测量纪律,以及能把 EVM 系数和原生系数分开写的成本模型。定价论证打赢了,一行方案表就写进去了;打不赢,就继续留在社会过程里自谋信任。

恢复问题是同一条弧线的倒影:从数学上不可恢复,到代码可编程恢复,再到「恢复路径本身需要后量子完备性审计」这个刚刚成形的新问题。信任在往前搬,攻击面也在跟着搬家。

信任的三段迁移:信数学、信社会过程、信共识

总结

压回一段话。8141 拆掉了「地址等于私钥」的等式之后,账户的出生只剩两个原语:创建式生来无钥,委托式在原址装指路牌,4337 是搬家,7702 是原址手术留后门,8141 把反事实部署收编成协议原语,再给无码 EOA 发一个只认 ECDSA 的运行时幻影。所有权变成「能让代码说出 APPROVE 的人」,密钥轮换成了一次存储写入,恢复从数学死刑变成设计菜单,但每条恢复路径都是第二扇门,ECDSA 的恢复路径会把量子暴露面从后门重新放进屋里,量子迁移的完备性等于升级所有授权路径,一条不漏。一笔 Falcon 交易今天就能走完全程:钱包按摘除规则签名,公共池因十万 gas 的预算谢客,私有通道进块,全网在 VERIFY 帧里重演两百万 gas 的验证,一条 APPROVE 指令同时完成授权、定付款人、走 nonce、预扣费,转账与结算随后。同一条签名的两种价格,变的不是密码学,是 α 和 β 两个环境系数、计费哲学与开销分摊;验证墙倒下之后字节地板墙接力显形,而让字节费归零的聚合门票,只发给字节不可见的协议方案,因为可见即承重,承重即不可删。验证器的信任,今天靠社会过程组装,不可变、可复现、确定性地址、审计、白名单,终局靠共识背书;两段之间的桥是测量与定价的论证。抗量子迁移没有单点魔法,它是把每一条授权路径、每一堵墙、每一段信任都逐一升级的工程。

这个系列后面还会回到几个已经钉在地图上的问题:方案表的定价论证怎么打,聚合证明的后续规范会长成什么样,以及与 8141 的整体重构哲学正相反的组合式路线(比如认领了 0x05 的 EIP-8202)会把签名敏捷性带向哪里。