Ethereum co-founder Vitalik Buterin proposed a faster way to migrate data to ETH 2.0, which means that the long-awaited Ethereum 2.0 upgrade may be earlier than expected.
In a proposal posted on Ethresear.ch on December 23, Buterin described a way to get rid of the proof- of- work (PoS) blockchain currently used by ETH 1.0. In this way, the project can be merged with the ETH 2.0 beacon chain with "accelerated progress".
- How far is Ethereum 2.0? Today's first mainnet configuration Ethereum 2.0 test network is released
- Babbitt Exclusive | When will Ethereum 2.0 come? Is Boca an enemy or a friend? Vitalik live profile
- Beacon Chain Contract: A New Way to Deploy Dapps on Ethereum 2.0
- Ethereum 2.0 Coordinator: Block size will increase by 8 times, and 500 million transactions per day can be achieved.
- Dry goods | Deterministic gadgets: used in Taifang 2.0 for 1.0 additional certainty
- Science | Xiaobai can understand - Ethereum 2.0 test network
Buterin has elaborated on this transition in many ways, saying that this alternative will simplify the transition in several ways. "In particular, it requires stateless clients, but does not require stateless miners and web assemblies, so it requires fewer rebuilds to complete," Buterin said in his proposal.
"The eth1 system will exist as shard 0 of eth2. Validators who want to participate in the eth1 system can [register as] an eth1-friendly validator, and they are expected to maintain an eth1 in addition to its beacon Full node. The eth1 full node will download all blocks on shard 0 and maintain the updated full eth1 state. "
It is unclear when this transition will take place. Ethereum 2.0 is a multi-year project and it often faces delays. Griffin Ichiba Hotchkiss, an Ethereum developer, said on December 10 that Ethereum 2.0 "will not be ready as early as originally hoped." He added that it may take several years to fully roll out Ethereum 2.0.
However, the initial stage of Ethereum 2.0 is relatively close to implementation. Several "stage 0" mortgage testnets have been launched this year, and the mainnet release with actual mortgage value should be launched in 2020. Developers are currently considering a summer release: On December 14, Justin Drake suggested setting the time on the Ethereum blockchain anniversary, July 30, as a possible release date.
The following is the content of Vitalik's proposal:
Alternatives to early eth1 eth2 merger
This is an alternative to eth1 eth2 merger, which achieves the goal of getting rid of the PoW chain and moving everything to the beacon chain at a predetermined schedule. Specifically, it requires stateless clients, but does not require stateless miners and web assemblies, so it requires fewer rebuilds to complete.
· Stateless client software that can be used for multiple implementations (a "pure function" for verifying blocks + witnesses, and methods for generating block witnesses)
Eth1 side protocol changed the bound witness size to ~ 1-2 MB
New beacon chain function
The state of slice 0 contains the state root of the eth1 system.
We add a new validator index list eth1_friendly_validators. Any validator has the right to register himself (and unregister) as eth1-friendly at any time.
The eth1-friendly validator randomly selects the proposer on slice 0 on any given time slot.
The Shard 0 Committee verifies the Shard 0 block. These deblocks are represented in a format that includes the currently existing block body and the stateless client witness. All other sharding committees verify their own shard blocks, but they only verify data availability, not state execution, because shard 0 is the only shard that runs the calculation.
Mode of operation
The eth1 system will "exist" as shard 0 of eth2 (eventually, we can adjust it to one of the execution environments, but at the beginning it can be the entire shard). Validators who wish to participate in the eth1 system can register themselves as eth1-friendly validators, and in addition to their beacon nodes, they should maintain a full eth1 node. The eth1 full node will download all blocks on shard 0 and maintain the updated full eth1 state.
A transition similar to the eth1-> eth2 transition will still be used to complete the transition.