Standards Track: Core
EIP-3651: 预热 COINBASE
EIP-3651: 预热 COINBASE
启动时 `COINBASE` 地址为热状态
Authors | William Morriss (@wjmelements) |
---|---|
Created | 2021-07-12 |
Requires | EIP-2929 |
摘要
COINBASE
地址应在交易执行开始时处于热状态,这与读取该账户的实际成本相符。
动机
直接 COINBASE
支付正变得越来越流行,因为它们允许条件支付,从而提供诸如隐式取消将要回滚的交易等好处。
但是访问 COINBASE
的价格过高;根据 EIP-2929 中引入的访问列表框架,该地址最初是冷状态。
这种 gas 成本的不匹配可能会激励除 ETH 之外的替代支付方式,例如 ERC-20,但 ETH 应该是以太坊上交易支付的主要手段。
规范
在交易执行开始时,accessed_addresses
应初始化为也包括 COINBASE
返回的地址 (0x41
)。
理由
当前初始化为热状态的地址是在交易验证开始时应已加载的地址。
始终加载 ORIGIN
地址以根据 gas 限制和 gas 价格检查其余额。
始终加载 tx.to
地址以开始执行。
COINBASE
地址也应该始终加载,因为它接收区块奖励和交易费用。
向后兼容性
此更改不存在已知的向后兼容性问题。
安全考虑
此更改没有引入已知的安全考虑因素。
版权
通过 CC0 放弃版权及相关权利。
Citation
Please cite this document as:
William Morriss (@wjmelements), "EIP-3651: 预热 COINBASE," Ethereum Improvement Proposals, no. 3651, July 2021. [Online serial]. Available: https://eips.ethereum.org/EIPS/eip-3651.