结论先说
区块级访问清单(BAL,Block-Level Access Lists,EIP-7928)是给以太坊每个区块附一张”状态访问地图”:谁读写哪个账户、哪个存储槽、终值是多少,全部随块声明并纳入区块头哈希。验证者由此不必边执行边猜依赖:磁盘预取并行、无冲突交易并行执行、状态根并行计算,甚至不重放交易也能核对块的自洽性(executionless 校验)。它是 Glamsterdam 升级的两大旗舰之一,与 ePBS 同场推进(见ePBS 是什么?当区块拍卖从链下握手写进协议)。截至本文核验时间(2026 年 7 月 24 日),BAL 处于测试网推进阶段、尚未在主网生效——它承诺的是”给未来提高 gas 上限铺路”,不是当期降费按钮。
串行为什么是老瓶颈
以太坊逐笔执行交易的根因是图灵完备的未知性:不跑一遍,没人知道 Tx B 会不会读 Tx A 刚写的槽。EIP-2930 的交易级访问列表让用户自愿预声明访问集换 gas 折扣,但可选、不完整、也不强制,帮不上并行化(对照见EIP-2930访问列表何时能省Gas?)。BAL 的立场相反:由构建者在完整执行一遍区块后(他们本来就要为利润最大化跑一遍),把执行轨迹里的全部读写与写后值提炼成规范结构,随块发布。地图必须完整正确——错了整块无效——于是验证者第一次可以在”已知依赖图”的前提下执行。

一张地图解锁四件事
并行磁盘预取:地图列出全部待读状态键,I/O 一次批量完成,执行期不再随机等待磁盘。并行执行:互不触碰同一槽的交易分到多核同时跑,关键路径从”总执行时间”缩为”最长依赖链”。并行状态根:各分支状态哈希独立计算。免执行同步与无状态友好:节点可用”读地图、核哈希、对余额差分”的方式验证区块,把新节点追赶与验证成本降档(节点同步谱系见新节点如何从零追赶?状态同步机制)。对 ZK 路线,固定的访问模式也让见证生成更规整(ZK 路线背景见ZK 证明和欺诈证明有何区别?Rollup 两种安全模型一类对比专题)。
结构细节与保留期
区块头新增 block_access_list_hash 字段,是 RLP 编码 BAL 的 Keccak-256 哈希;地图本体不进区块体,客户端单独存储并经 engine API 传递。BAL 不是永久链上数据:客户端保存约两周(3553 个 epoch)窗口后允许修剪,窗口外靠头部哈希保完整性,RPC 提供 eth_getBlockAccessList 类接口取近期地图。构建开销侧:平均约 70 KiB 量级的块增量会拉长传播,与 ePBS 加宽的数据传播窗口正好互补——这也是两者绑定同一升级的原因。
争议与核验
反方论点集中在三处:地图体积随状态访问量线性膨胀,DeFi 密集块收益缩水;构建者必须实现正确的地图生成,出错即废块,工程门槛抬高;“执行一遍才能产地图”意味着构建者优势并未消失,只是记账义务加重。正方回应有仿真与实测数据支撑(EIP 与安全考量章节链接的分析文)。读者的核验路径:EIP-7928 状态栏与区块头字段定稿、Glamsterdam 范围公告、devnet/测试网是否产出可查的 BAL 与验证失败处置记录(升级流程解读见公链升级怎么排期?从 devnet、测试网到预定激活)。三条误读顺手拆掉:BAL 不是 EIP-2930 的放大版(强制、完整、含写值);BAL 生效后交易不会自动变快(降费依赖后续 gas 上限策略);“并行执行”≠“账户模型变了”(状态模型不变,只改变校验方式)。
风险提示
BAL 的结构细节、保留窗口与实施升级归属以 EIP 定稿与客户端发布为准(本文核验时间 2026 年 7 月 24 日);测试期参数频繁变更,引用性能数字须带来源与日期。本文不构成投资建议,也不构成对 gas 费用的预测。
小结
BAL 把”先跑才知道谁碰谁”倒转为”先给地图再并行跑”:构建者多背一页地图,验证者换来预取、并行、免执行三重红利。它是以太坊从”串行验证”转台到”并行验证”的那条铁轨——铁轨本身不跑车,但没有它,提速的班车无处可开。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。