区块链有一味没人愿意谈的药:让不活跃的账户“过期”。账户模型要求全节点持续保存每个账户状态的最新值(余额、合约存储、代码),而链上大量账户常年无人动过。状态膨胀(state growth)因此成为节点硬件门槛持续上涨的主因。状态过期(State Expiry)是针对它的家族方案,与近年热议的“历史过期”方向不同但常被混谈(见 EIP-4444 历史过期是什么?节点为什么可以不存全部历史)。
核心思路:最新状态仍可全保,冷状态换形态存
研究中的主流状态过期设计(以太坊研究者提出的 state expiry 路线图与研究文献中的租费模型)通常把状态分成两层:热状态(近期被访问过的账户与存储槽)继续像今天一样被全节点完整保存;冷状态(超过一段期限无人读写的部分)不再要求每个节点常驻,转而只承诺它的哈希根。当有人要访问一个过期状态时,交易必须额外附带一份“证据包”(witness)——从状态根到该账户完整内容的默克尔证明——节点验证证明无误后执行,并把该账户重新激活为热状态。换句话说:账户没有“钱没了”,只是从“住在每台节点的硬盘”降级为“住在证明树里,谁来用谁自带档案”。
与“历史过期”的分工
历史过期处理的是过去区块的原始数据(谁在哪个高度花了什么),结论是“执行当前状态不需要全部历史”;状态过期处理的是当前状态本身(每个键的现值),结论是“不是每个键都需要每个节点随时手边有”。两者互补:前者面向轻节点的诞生,后者目标是给全节点负担封顶。有一点必须分开:机制提案与实际启用是两回事——状态过期与租费目前以研究提案的形式存在,任何一条链是否启用、启用到什么程度,应以其当下官方文档和版本说明为准,不能用某个时点的路线图倒推现状。
快速问答
- “我的钱包放十年不动会被销毁吗?“先看该链实际启用了什么机制再下结论——状态过期目前以提案形式存在。提案的普遍设计目标是“降级可复活”,而非“到期充公”;复活时要自带证据包,所以链上承诺必须仍可被某方重构。
- “那为什么还要讨论它?“因为替代方案各有代价:状态租金(按时收费逼出清理)被普遍认为破坏财产权直觉;ZK 无状态客户端用证明替代常驻状态是另一条路线(见 ZK 证明和欺诈证明有何区别?Rollup 两种安全模型 延伸的无状态思路);而什么都不做,节点门槛会把去中心化程度一点点磨掉。
- “witness 包谁来做?“钱包、RPC 服务商与专门的 witness 服务可以代生成;大小由默克尔证明路径与账户内容本身决定,存储槽多的账户会更大,与全网状态总量无关。
- “合约会不会被过期坑到?“设计难点正在于此:若合约 A 常读一个已冷化的账户 B 的存储,每次调用都要带证据,成本模型会重写,这也是落地缓慢的核心原因。
常见误区
- 误区一:把状态过期等同于“账户有效期”。它是存储形态切换,不存在“到期作废、资产归零”的机制设计;宣称“XX 链账户几年不用就没收”的说法与主流提案不符。
- 误区二:把 EIP-4444(历史过期)读成状态过期。被丢弃的是原始历史数据,当前状态一个字都不能少。
- 误区三:认为过期后无法审计。哈希承诺仍在链上,配合他人留存的 witness 数据仍可重构历史,可审计性从“人人有全量”变成“按需可验证”。
小结
状态过期赌的是一个经验事实:链上状态高度长尾,绝大多数键永远不再被碰。把长尾从“人人常驻”改成“承诺+证据复活”,全节点负担从指数变为可预算。它对普通用户的第一承诺是——什么都不会发生,你的账户依然永远有效;它真正改变的是节点运营的经济学,而这恰恰是长期去中心化的地基。
风险提示:本文不构成投资建议。协议演进存在不确定性,勿按路线图提前调整资产策略。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。