Finality refers to the situation where a blockchain transaction is permanent and cannot be reversed. Finality is confirmed in a blockchain with its consensus mechanism where each validator validates the transaction and this contributes to finalize it.
Finality is important on a blockchain because it makes the latter immutable and secure. If a transaction can be changed at any time, then there could be a loss of funds.
Table of Contents
Why is Finality Necessary?
To Make Sure You Own 100% of Your Funds
Let me explain it to you with an example. Suppose you run a grocery shop and get payments using Google Pay. Think about a customer who buys from your shop, pays with Google Pay and leaves. After some time, you notice that they have reversed the transaction and your money is now gone.
How would you feel?
This is the exact reason why finality is important. It is to make sure that whoever sends or receives crypto has complete control over their funds.
Without finality, it would be impossible to have full control over your funds.
Finality also Prevents Double Spending
Double spending is a way where a single crypto token could be spent more than once. This was the reason why initial cryptocurrencies like Bit Gold failed.
To eliminate double spending, it is made sure that after every transaction, the sender’s wallet is deducted and the receiver’s wallet is credited. This is done through a process called a consensus mechanism.
- Each validator confirms that a certain transaction is genuine.
- After confirmation, the validator adds the block to a blockchain.
- Users can only their received funds once a certain number of blocks have passed after they have received crypto.
Finality of Different Blockchains
Each blockchain has a certain number of blocks/no of confirmations which must happen to finalize a transaction.
Below is the number of confirmations that is used by Coinbase to add finality to their transactions.
- Bitcoin – 2 Confirmations (6 Confirmations are very secure)
- Ethereum – 12 Confirmations
- Litecoin – 5 Confirmations
Factors Affecting Finality
Although there are several factors that affect latency, here are the top most ones.
Hard Forks
Hard Forks are changes in the blockchain which make it difficult for blockchains to recognize or accept transfers from their pre-fork blockchain.
CASE – The Ethereum DAO Attack
The most high-profile case where I have witnessed hard forks negatively affecting blockchain transactions was the Ethereum DAO Attack. The attacker stole 5% of the total ETH supply which was 1/3rd of the DAO’s value. The community proposed to rollback the hacker’s transaction through a hard fork. This led to a disagreement between community members.
Eventually, the disagreement to do a hard fork led to the creation of Ethereum Classic by those who opposed the hard fork.
Network Latency
Network latency causes a delay in communications between validators which makes the blockchain slower and delays block creation.
51% Attacks
Attacks where the hackers steal more than 50% of the controlling power of the blockchain are called as 51% attacks. Here, they change the history of the blockchain by removing transactions from it in a way that benefits them.
For example an attacker swaps 500 ETH with Shiba Inu with a user through two transactions. He then does a 51% attack to reverse the transaction. Here, he gets to keep both the Shiba Inu as well as the Ethereum.
Types of Finality
- Probabilistic Finality: Here, the likelihood of reversing a transaction decreases as time passes.
- Economic Finality: In this case, it gets more and more expensive to reverse a transaction because if it is reversed the validator will lose stake.
- Instant Finality: A fast blockchain leverages security with speed to provide finality in a very short time, say 1 second.
- State Finality: Some blockchains like Optimism use periodic snapshots to record the state of the blockchain transactions. Once a state change has been recorded, it is impossible to reverse these transactions.