以太坊社区关于上海升级提现支持的介绍:https://ethereum.org/en/staking/withdrawals/
上海升级主要合并了 EIP4895 StakedETH 的提现能力,当前已经在 Sepolia 测试网合并,Goerli 和 主网上线日期待定。上海升级是即巴黎升级(The Merge https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/paris.md)后的一次重大更新,当前ETH网络中 stake 了超过 16M 枚ETH,分布在 50w+ 个validator中。其中不凡是在 2020 年已经参与质押的,允许提现后预计可能对 ETH 价格造成一定压力。
https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md
没有使用传统的 Transaction 类型作为提现交易,而是在共识层上定义了新的指令 withdrawal
。以此降低系统复杂度,减小出错的概率。
指令的具体编码格式为:[index, validator_index, address, amount]
。多个 withdrawl 合并打包成为 withdrawls,用于计算科验证的 withdrawls root。
提现操作由需要 validator 配置好提现地址,并签一个 "voluntary exit” 消息并且把消息广播到 beacon 链上,然后 beacon 链将根据一个 “Sweep” 的规则按计划将 ETH 提现。