编者注:本文为Vitalik于2020年10月19日在以太坊研究者论坛上发表的帖子,提议了他所设想的Eth1如何转换成分片化信标链的子系统的过程,并解释了开发者、用户对这个过程会有什么知觉。
本文介绍的路线图被用来完成从eth1向eth2转换,如果你是应用开发者或用户,你所能感受到的变化乃至颠覆实际上非常有限。已有应用将继续运行,而不会发生任何改变。所有账户余额、合约代码和合约存储(包括ERC20余额、质押债仓等)都将继续存在。
你需要应对以下情况: 1. IO访问操作码(SLOAD、BALANCE、EXT*、CALL*)的gas成本将增加。CALL(调用)的gas成本大概是每访问1字节的代码需要消耗1gas。 2. 你需要下载实现网络升级的代码。这在根本上与拜占庭和君士坦丁堡等其它升级没有区别。但是下载量更大一点,因为如果你还没有eth2客户端,那你需要下载一个。 3. 以太坊区块链可能会暂停大约1小时。1小时后,“以太坊”看似 1. 指定一个(eth1链的)高度"TRANSITION_HEIGHT"。高度为"TRANSITION_HEIGHT"的eth1区块将被视为eth1链的“最终”区块。从该区块往后,(原本是“正统链的”)eth1将不允许验证者投票给区块号>"TRANSITION_HEIGHT"的eth1区块。如果投票算法已经选出了某个区块编号>"TRANSITION_HEIGHT"的eth1区块,则改成为"TRANSITION_HEIGHT"的eth1区块投票。 3. 此外,在已触发(2)的情况下,验证者会将"deposit_count"设置为比实际值高2^63(就是将"deposit_count"的topbit作为“eth1已完成”的标记) 4. 当eth2在“eth1已完成”标记开启的情况下接受"eth1data