Simple definition of Finality
- Finality describes whether and when committed blocks with transactions can no longer be reverted/revoked.
- It is important to differentiate between probabilistic and absolute finality.
- Probabilistic finality describes the finality of a transaction dependent on how probable reverting a block is, i.e. the probability of removing a transaction.
- The more blocks that come after the block containing a specific transaction, the less probable it is that a transaction may be reverted, as longest or heaviest chain rules apply in the case of forks.
- Absolute finality is a trait of protocols based on Proof-of-Stake (PoS).
- Finality comes as soon as a transaction and block are verified.
- There are no scenarios in which a transaction can be revoked after it has been finalized.
Finality in PoS and PoW networks
- Proof-of-Stake (PoS) networks can have absolute finality because the total staked amount is known at all times. It takes a public transaction to stake, and another to unstake. If some majority of the stakers agree on a block, then the block can be considered "final" because there is no process that could overturn the consensus.
- This is different from PoW networks, where the total hashing capacity is unknown; it can only be estimated by a combination of the puzzle's difficulty and the speed at which new blocks are issued. Hashing capacity can be added or removed simply by turning machines on or off. When hashing capacity is removed too abruptly it results in a drop in the network transaction throughput, as blocks suddenly fail to be issued around the target interval.
Sources and articles on Finality