This article is about the road to the future of Ethereum. The Eth2 developer team refers to the current Ethereum as “eth1”, which is what we now knowPoWchain. And the future of Ethereum is neither eth1 nor eth2, but…Ethereum:
Let’s sort out the current Ethereum:
Figure: The current operation of Ethereum (eth1 chain)
Picture:PoS Mechanism instead of PoW mechanism
PoW is not all bad, but I need an attractive topic
So we choose to PoS transition, with only a small server instead of a large number of mining equipment, instead of miners verifier.
Figure: If they do not do the second step of verification, they will lose assets
Figure: Divide the activities of Ethereum into two parts (consensus layer and execution layer)
The consensus layer ensures that everyone agrees on the correct data. The execution layer actually interprets these data to make it meaningful. “Data” refers to any form of interaction with the blockchain, such as deploying a contract, conducting transactions on exchanges , sending payment transactions, etc…
For example, if the state holds a ledger that records the balances of Alice and Bob, and the new block contains a record of Bob paying 10 tokens to Alice, then after this new block is added to the blockchain, the state will record the new balance information . “State after block N+1” (the state after block N+1) The dotted dot on the right side of the figure represents the change after the new block is added. At this time, the existing state may be modified (for example, Alice and Bob Balance), or create a new state (deploy a new contract, or add Carol to the ledger…)
The first step is to decouple the consensus layer from the execution layer; the second step is to move from PoW to PoS
Rollups and eth2 are mainly to solve the first point in the plan above: removing the correlation between the consensus layer and the execution layer. So how is the progress of this work?
Picture: The first step has been completed
➤ The first is PoS-consensus chain (also known as beacon chain)
➤ The second is our reliable PoW- consensus + chain execution (aka, eth1)
They run at the same time, but they can also communicate with each other. However, this function has not yet been implemented…
Figure: How to become a validator
Figure: Merge
➤ PoS-consensus chain
➤ a chain PoS performed based on (i.e., “eth1” chain)
After the merger, validators of the PoS-consensus chain will be able to redeem and withdraw their pledge deposits and rewards, and send them back to the PoS-based execution chain. [2]
Therefore, we need to move from a PoW environment to a fully mature PoS environment. Please note, however, that this shift does not improve the bandwidth of the blockchain (how many transactions are executed in one block). This is the problem to be solved by sharding. Before that, let us discuss what methods can improve the scalability of execution when we only have one execution chain.
Figure: Put execution under the chain; put data on the chain
(Color summary: consensus=purple, execution=green, data=yellow)
More precisely, the data required for execution (transaction input) is separated from its carrier (transaction) and “bundled” in a space-saving manner. At the same time, rollups run outside the execution chain (eth1), submit and execute data.
Figure: Several rollups have been deployed, and more are under development
What is the alternative to Rollups? Let’s take a look at the picture above, let’s suppose, what if we replace the vertical yellow chains with a series of parallel red chains? For example, what if we copy several eth1 chains and run them side by side?
The question here is how to deal with multiple execution chains running in parallel. What if something happens on a certain chain, and other people need to know what to do? This is a very difficult problem faced by sharding, or a problem that needs to be overcome for schemes executed in multiple chains.
“There is no difference between Rollups”, readers may think so, there is nothing wrong with it in essence. But when you want to trade from one rollup to another, the same thorny problem reappears. However, the key point is that there are already several rollup designs, and the space for exploration of these solutions is still very wide. That being the case, why not let rollups experiment first and then introduce a protocol-level approach?
This brings us to…
Figure: Use shards to store data released by rollup
I need to emphasize that this does not mean that we will always exclude the implementation of fragmentation. The Ethereum roadmap centered on rollup is our short- and medium-term development goal, until we find a better encryption primitive to ensure that we can implement sharding across multiple chains. This scheme is very attractive and requires a lot of people in the team to spend a long time studying it. At the same time, we can use rollups.
Figure: Each rollup has its own execution environment
➤ Realizing large-scale migration between users and rollups is a cool concept. If the user has enough public transportation to get him back and forth between Layer1 (eth1) and Layer2 (rollups), then why bother to drive back and forth by himself? This is very uneconomical.
➤If the user thinks that they can do something cooler on another rollup (the rollup where ta is in is not available), does ta have to first withdraw cash to L1, and then deposit from L1 into this rollup? This is too wasteful.
➤ For the current chain Operationally, rollups greatly improved network bandwidth, which is not in doubt. But rollups are still not the infinite highway that users expect. There are still many people who want to do many things on rollups, sometimes even at the same time! Therefore, rollups will inevitably face congestion problems, but unlike L1, which is a particularly congested market (it will be online soon in 1559), rollups have a wider range of exploration.
➤ Speaking of congestion, although this is more specific to the protocol level, we will also see EIP-1559 playing the role of a traffic policeman to specify how much data is published on each data shard to ensure that the verifier can handle this amount of data. If readers think it is cool to run EIP-1559 on eth1, then please look forward to running 1559 on 64 shard chains at the same time. So, where should rollups publish their data? Is it only published on a single shard so that the data is only available on that shard? Or is it published on multiple shards, so that you can benefit from the planned “shard staggering” solution? This plan is made up ofVitalik It is proposed that the fragments flow out of the block, so that when the data is released, the time to generate the new block is within a few hundred milliseconds. This is an ideal choice for applications that require “quick finalization”.
[2] PhiGo tweeted that after the merger (PoW withdraws from Ethereum), it may not necessarily be possible to withdraw pledge deposits. Indeed, the current merger plan is more focused on the merger part, and the “withdrawal” issue is an independent but related research work.