Original article from BREAD
Compiled by Odaily Planet Daily Golem ( @web3_golem )
Editors note: Ethereum founder Vitalik mentioned in his new article Possible futures of the Ethereum protocol, part 1: The Merge that Ethereum still needs to improve in terms of technology, reasons and paths. The first is to change the finality of blocks from 2-3 epochs (~ 15 minutes) to one slot (~ 12 seconds). So, what is Finality that Vitalik attaches so much importance to? How is it implemented in Ethereum and L2?
Crypto researcher BREAD’s article “WTF is Finality?” uses analogies to explain the finality of blocks and the process of implementation. Odaily Planet Daily specially compiled it as follows, hoping to help readers understand.
Analogy to Finality
In the tradition of my WTF is... series of articles, I like to start with a real-life analogy so that people can jump out and get the gist if they dont want to get into the underlying details. For Finality, we can use the example of concrete hardening over time, as shown in the figure:
This is the most advanced explanation of finality in blockchain. Just like concrete, as time goes by, from pouring (initial confirmation) to initial setting (multiple confirmations), it becomes increasingly difficult for the initial block to be judged as fake until it is completely hardened (finalized). Once it reaches the end, it is almost impossible to change.
The corresponding specific order in the blockchain is:
Submitted > Confirmed > Finalized
If you want to dive deeper into the how, what, and why of finality (in the context of Ethereum), read on.
What is Finality?
Let’s try to put some structure around this concept and understand it. Here is an explanation of finality and related concepts:
Slot (also known as block time): Perhaps its alternative name block time is easier to understand. The slot or block time is the amount of time given to the system to generate a new transaction block and append it to the current chain. For example, Ethereums slot is 12 seconds, Base is 2 seconds, and Solana is 0.4 seconds.
Confirmation : This is what happens when a transaction is officially included in a block that has been added to the current chain. It is now confirmed as part of the ledger, and as subsequent blocks are added to the ledger, the number of confirmations will increase.
Epoch : Every 32 slots is called an Epoch. This is a secondary structure in the blockchain that is used to delegate roles and responsibilities. Slots are used to build blocks, while Epochs are used for data propagation, reward distribution, validator selection, etc.
Checkpoint Block : Checkpoint block, which is the first block created in an Epoch and is used as a reference point for checking the chain history.
Finality : Finality is the point at which a transaction is considered irreversibly added to a given chains ledger. However, the term is not used uniformly across chains in terms of technical properties, so it is best not to assume the same standard in all cases. In the Ethereum ecosystem, finality is reached when 2 epochs have passed (~13 minutes); in Optimistic L2, it is when the fraud dispute period has passed (~7 days); in ZK L2, due to the guarantees provided by validity proofs, there are 2 controversial finality moments: local (when the proof is generated on L2 [~a few minutes]) and global finality (when the proof is published to Ethereum and finalized there [~13 minutes]).
Block Reorganization (Reorg) : This is when blocks that were once confirmed as part of a chain are no longer considered valid for some reason, and a new chain is formed. This is usually accompanied by penalties.
The following figure attempts to visualize all these terms in a single image to make them easier to understand:
How does finality work?
So far, we have learned about finality and related concepts. So, how do they work together? What are the rules?
For Ethereum
Validator voting: Validators of each epoch (32 blocks) will vote on the checkpoint blocks of the current and previous epochs until the checkpoint block obtains 2/3 of the votes of the staked ETH;
Reasonable Checkpoint: Once a checkpoint block reaches the 2/3 vote threshold, it is considered “reasonable”;
Supermajority chain: Once two subsequent checkpoint blocks a and b are reasonable and b has connected the next block, the blocks contained in the epoch before the first epoch will become final blocks and they will no longer be affected by simple block reorganization.
For L2
L2 is built on Ethereum, so are they basically the same?
The answer can be said to be yes or no. In “ Will Based Rollups have a place in the future of Ethereum? ”, it was mentioned that L2 is an independent blockchain, but they rely on Ethereum for final settlement. This means that their finality is as layered as the chain.
There are two types:
Local Finality: This is the finality of the L2 itself, and only applies to L2s that utilize validity proofs (aka ZK Rollups). This is because the validity proof is backed by mathematics, and when the proof itself is produced it means it is correct. Therefore, once the ZK L2 produces its proof, the L2 state can be considered finalized without having to wait for the proof to be published to Ethereum and settled on Ethereum. However, this still carries risks and trust assumptions, and you can decide whether to trust it based on your risk tolerance.
Global finality: Once the state is finalized, the L2 confirms its local state and generates a proof (fraud or validity), publishes the proof to Ethereum, and then Ethereum confirms the block containing the proof. Even so, for L2s using optimistic, the opportunity to retract the transaction still exists until the 7-day challenge period has passed. This is a trade-off made to reduce the amount of computation required when creating proofs.
L2 networks can have local finality in certain circumstances, but in general must wait until Ethereum has completed its published proof of validity (ZK) or the challenge window for fraud proofs has passed (Optimistic rollups).
For Bitcoin/POW chains
There is no finality in Bitcoin’s PoW mechanism, because anyone can produce the longest chain on it and become the main ledger. This means that, although somewhat impractical, as long as there is enough computing power, the last day, week, or year of Bitcoin history can be rewritten.
However, while this approach is costly in terms of resources and time, and not very practical to implement, it does create a meaningful distinction between different systems and gives rise to several unique types of MEV (Maximum Extractable Value), such as Long-Ranged Attacks and Block Withholding. In these cases, miners can choose to produce and hide a block and then append a subsequent block, or mine multiple blocks in succession, creating and capturing unique profit opportunities.
Why is finality needed?
Above, we know how to achieve finality in the POS chain, and it requires a lot of work. So why do we do this? The answer is that there are indeed some benefits to doing so:
Economic security : The system (and we) can look back to a point and conclude with a high degree of confidence that it will not change, which gives ecosystem participants confidence in the real situation. For example, large transfers and loans, once users are confident that the system cannot change without extreme, out-of-protocol intervention, this gives users the confidence to participate in the ecosystem based on this authenticity. This is also why cross-chain bridges usually wait for a certain number of confirmations or full finality before releasing funds on the secondary chain.
Faster settlement : Because there is a moment in the system when the state is officially permanent, it means that participants in the ecosystem only need to wait for this settlement time, while in the PoW (proof of work) system, this moment will never come and it depends entirely on personal subjective judgment.
Reduce the factors of being attacked : The previous article mentioned some MEV opportunities on the PoW chain. The POW chain only solves the nothing at stake problem, that is, anyone who takes malicious actions against the system may also face losses. But in the POS chain, if you are a validator and try to change the finalized state, you must violate the protocol rules, so you will face the risk of slashing.
Conclusion
This article briefly explains what finality is, just to make people aware that it is an often used but not well understood blockchain mechanism. The process of finality is like the blocks in the system hardening like concrete, and eventually they become solid as rock.