欢迎阅读 ChainFeeds PRO # 111。每周更新内容:比特币协议进展、以太坊治理相关、最新研究和进展、最新论文。
重点
Payload Chunking
以太坊基金会成员 Toni Wahrstätter 详细阐述了针对以太坊执行层区块的优化方案:将大型区块分割成多个独立传播和验证的迷你区块(chunks),旨在解决当前区块验证过程中的延迟和性能瓶颈问题。以太坊区块是大型、单一的对象。验证者必须完整下载整个区块后才能开始顺序执行其中的交易。这造成了:传播延迟:大区块下载耗时。执行瓶颈:无法利用多核 CPU 进行并行执行。
一、核心解决方案:区块分块
核心思想:将一个 EL 区块的有效载荷按固定 Gas 预算,分割成多个有序的、独立的块。
关键特性:
独立性:每个块携带其执行所需的预状态,并能独立进行无状态执行。它提交其执行后的状态差异。
有序性:块按顺序排列(块 0 的后状态是块1的预状态),但可以并行验证。
侧车传播:这些块作为侧车独立传播,而不是包含在主区块体内。
共识层承诺:共识层的信标区块头包含对这些块头的承诺(Merkle 根)。
二、架构与协议变更
执行层变更:
新区块头字段:在现有的 EL 区块头中增加一个
chunk_count
字段,记录该区块被分成了多少块。块结构:每个块包含:
块头:包含索引、交易根、后状态根、收据根等承诺。
交易列表:属于该块的交易。
提款列表:仅最后一个块包含提款。
访问列表:该块执行所需的访问列表。
预状态值:(可选)使该块能实现无状态执行。
共识层变更:
信标区块体:新增一个
chunk_roots
列表,包含所有块的 SSZ Merkle 根。执行载荷头:增加
chunk_count
字段,与 EL 头保持一致。
侧车设计:
ExecutionChunkSidecar:是传播块的容器,包含:
块索引
块数据(序列化后的块体)
签名后的信标区块头(证明其归属)
块根包含证明(Merkle 证明,证明该块根确实在信标区块的
chunk_roots
中)三、好处
流式验证:下载的同时执行,CPU 并行处理,带宽均衡。
ZK 证明优化:可并行对多个 chunk 生成证明。
无状态友好:小 chunk 可提供 pre-state。
可扩展性:未来支持 zk-chunks 或分片执行。
比特币协议进展
如何在闪电网络中实现异步支付
Lorenzo 讨论了闪电网络在支付体验上的不足,重点是异步支付问题。比特币链上支付天然支持异步,发送方只需转账,接收方上线后即可收到。但闪电网络支付要求收款方事先生成一次性发票,且支付过程中双方必须同时在线,否则支付无法完成,造成用户体验不便。为解决异步支付,简单方法包括第三方代管发票或节点暂时锁定支付,但会引入信任风险和流动性低效。Matt Corallo 在 2021 年提出更优方案:借助 LNURL 与闪电网络服务商(LSP),由发送方的 LSP 暂存支付,直到接收方 LSP 通知其上线,再完成转发。这避免了资金被第三方托管,并减少流动性占用,未来还能与 BOLT12 结合。不过,LNURL 仍存在信任隐患,需依赖服务商生成发票。PTLC 技术有望进一步降低风险。
Bitcoin Optech Newsletter #370
本周无重要内容更新
以太坊
研究和进展
Generalized base fee update fraction
以太坊研究员 Anders Elowsson 提出了一种广义公式,用于计算 Blob Base Fee,从而统一 EIP-4844 与 EIP-7691 的更新逻辑。以太坊在每个区块中根据 blob 的消耗量更新基础费,其变化公式为
math.exp((blob_gas_used - TARGET_BLOBS * GAS_PER_BLOB) / BLOB_BASE_FEE_UPDATE_FRACTION)
,而不同 EIP 对应的BLOB_BASE_FEE_UPDATE_FRACTION
值不同,目的是在最大或最小 blob 使用时限制每块基础费的变化幅度(例如 ±12.5%)。Anders Elowsson 提出了一个统一泛化公式:BLOB_BASE_FEE_UPDATE_FRACTION = MAX_BLOBS * GAS_PER_BLOB / (2 * ln(1.125))
,其中MAX_BLOBS * GAS_PER_BLOB
表示每块最大 blob gas。该公式通过数学推导说明了如何覆盖 EIP-4844(目标 blob gas 为最大的一半)和 EIP-7691(取 full/empty 响应中点)的设计,使基础费在不同 max:target 比例下仍保持合理变化,并保证 full/empty block 响应的对称性。并进一步指出,这一公式可以自然扩展到 Gas 归一化方法(EIP-7999),通过将(g - t)
除以最大值m
,实现基础费更新与资源上限解耦,使价格机制在调整资源限制时更加稳健。总结来看,该公式统一了历史 EIP 的基础费更新方法,还提供了对未来硬分叉和资源归一化策略的理论基础,确保基础费在各种使用情况和比例下变化合理、稳定。
Ethereum’s Leaky Gas Tank: Unveiling 13 Costly Gas Model Inconsistencies
Zihao Li 列举并分析了以太坊 gas 收费模型中存在的 13 个不一致、不合理或存在漏洞的设计。这些不一致之处源于协议设计、客户端实现优化与 gas 收费规则更新不同步、以及历史遗留问题等多种原因:
外部交易与内部交易的账户创建费不同
外部交易创建新账户只收 21,000 gas,而内部交易收 25,000 gas。
原因:两条路径使用不同的计费钩子。
预编译合约调用可能跳过输入字节收费
调用某些预编译合约(如 ECRECOVER)时,交易输入字节费可能被忽略。
原因:地址设计不合理,部分浏览器或客户端标记错误。
访问列表未被访问仍收费
EIP-2930 的访问列表即便未使用,也会被收取费用。
原因:简化执行逻辑,协议按包含即收费。
自转账仍收费
A 向自身转账仍收 9,000 gas,但实际上没有余额变化。
原因:执行收费在转账逻辑触发时就计算,不考虑是否为无操作。
Calldata 与合约字节码存储价格不一致
Calldata 16 gas/byte,合约字节码 200 gas/byte。
原因:Gas 表没有按实际磁盘占用统一定价。
回退交易仍收费
即使交易 revert,仍收写入状态的 gas(如新账户、转账、存储写入等)。
原因:执行时收取费用,回退只取消状态,但不退费。
多次转账错误地当作冷访问收费
同一交易多次向不同账户转账时,后续转账有时仍收冷访问费。
原因:热/冷访问记录未一致更新。
矿工/验证者奖励写入不收费
系统级余额更新(奖励、提现)不计 gas。
原因:绕过了 gas 计费钩子。
SSTORE 首次磁盘读不收费
存储操作首次读取旧值不收费,只对写入收费。
原因:EIP-2200 只关注状态变化,不关注读操作。
存储读取优化未更新 gas
客户端采用 flat storage 等优化减少 I/O,但冷访问 gas 仍按旧标准收费。
原因:Gas 常量未随底层优化调整。
SLOAD 与 MLOAD 价格不一致
SLOAD(100 gas) vs MLOAD(3 gas),均为内存读取,但费用差距过大。
原因:历史遗留,优化后成本差异缩小但价格未更新。
内部交易更新账户未收费
内部调用修改合约存储时,账户状态更新未额外收费。
原因:协议没有对内部交易触发的账户更新收费。
EXT 操作码定价过粗
EXTCODESIZE、BALANCE 等冷账户访问费用相同,但实际工作量不同。
原因:Gas 桶过粗,忽略操作差异。
MEV 相关
The MEV Letter #103
Flashbots 团队推出垂直于 MEV 研究领域的 Newsletter,以下是一些重点摘录:
文章《Unpacking Maximum Extractable Value on Polygon: A Study on Atomic Arbitrage》通过分析 原子套利模式、搜索者行为和市场趋势,对 Polygon 上 MEV 策略在 22 个月间的演变进行了系统性探讨。
文章《P2P Flashblocks Propagation》提出了一种 P2P Flashblocks 传播协议,旨在实现部分区块的高速分发,并支持无缝故障切换。
文章《Protocol Update 003 — Improve UX》介绍了在intents、互操作性、隐私等方面改进用户体验的最新进展。
文章《FOCIL on Ethereum and legally credible neutrality》分析了 FOCIL(协议强制的包含列表,Forced Inclusion List) 的法律影响,认为通过协议强制验证者包含交易,有助于增强其 法律层面的中立性。
视频《All Core Devs - Execution (ACDE) #219》讨论了 Fusaka 开发网的下一步计划、Holešky 测试网的弃用、Gas 上限测试以及 Glamsterdam。
视频《Block-level Access Lists (EIP-7928) Breakout #1》讨论了区块级访问列表的规范设计、实现方案以及未来路线图。
视频《FOCIL Breakout #18》聚焦于 FOCIL 的实现、测试和工具链相关更新。
📑论文
Breaking Omertà: On Threshold Cryptography, Smart Collusion, and Whistleblowing
作者来自:Cornell University、Princeton University、Stanford University、New York University
作者探讨了如何结合密码学与机制设计来缓解协议中参与者串谋的问题。传统密码学协议往往假设少于 $t$ 个参与者作恶,但在现实中因金钱激励,串谋难以避免。作者提出引入「吹哨」机制:串谋者可提交加密证明揭露同伙的不诚实行为,使其公开化。他们分析了这种机制在秘密共享、随机信标和匿名凭证等应用中的可行性。同时,作者提出「智能串谋」模型,类似区块链的智能合约,允许串谋者协调并惩罚背叛者(如吹哨者)。结果表明,即便吹哨是匿名的,也无法在无条件安全下抵御智能串谋。但作者设计了一种只需小额保证金的吹哨协议,在保证金约为 $t$ 倍的情况下,仍能对抗智能串谋。