You're watching the block explorer when the chain tip flickers. Two competing hashes, same parent, both propagating. You've seen this before, shrugged it off before. Reorgs happen. Then someone in the room says the word finality, and the conversation changes register entirely.
These two events look superficially similar. They are not the same thing.
A reorg is embarrassing. A finality reversion is a different category of problem.
A standard reorganization in a proof-of-stake chain is a race condition. Two validators propose blocks at nearly the same slot, the network splits briefly on which tip to follow, and the fork-choice rule (Ethereum uses LMD-GHOST) counts attestations until one branch accumulates more weight. The losing branch gets orphaned. If you received a payment on that branch and it vanishes, that's painful. But nothing was promised. The orphaned block had never passed through the finalization process. It was a candidate, not a commitment.
Finality in Ethereum's Casper FFG works like this. Every 32-slot epoch, validators cast votes on source checkpoints and target checkpoints. When two-thirds of total staked ETH attests to a checkpoint pair, that checkpoint becomes justified. When the next epoch's checkpoint gets justified on top of it, the earlier one becomes finalized. Done.
A finalized block is not just the heaviest chain tip. It is a block that more than two-thirds of all validators have staked their economic existence on, cryptographically signed. Reverting it means those validators signed two conflicting things about the same slot. That is slashable. The protocol can prove they lied and burn a significant portion of each offender's 32 ETH stake.
So a finality reversion isn't a race condition. It's a proof that a supermajority of validators committed coordinated fraud.
The arithmetic of catastrophe
To revert a finalized checkpoint, an attacker needs a conflicting checkpoint finalized. That requires assembling more than one-third of all validators to not finalize the honest chain, producing a liveness failure, and then separately more than two-thirds to finalize the attacker's chain. In practice: roughly 34% of staked ETH to stall finality, a full majority to rewrite it.
Take two validators, Mara and Jonas. Mara controls 0.01% of stake; Jonas controls 34%. Mara's reorg risk on finalized blocks is near zero. Jonas can threaten liveness by withholding attestations, grinding the network toward non-finalization. If Jonas goes further and double-votes on conflicting checkpoints, the protocol detects the slashable offense from the signed messages alone. No trust required. The evidence is in the signatures.
The slashing penalty is not flat. Ethereum's correlation penalty scales with how many validators misbehave simultaneously, so if 34% of validators all get slashed in the same window, each loses a far larger fraction of stake than a single rogue actor would. The design explicitly makes a coordinated attack economically suicidal at the scale required to revert finality. I think that's the most underappreciated piece of the security model: the punishment isn't linear, it's a trap that springs harder the more people you recruit.
What a standard reorg actually costs
A one- or two-block reorg is, in the normal course of network operation, a minor nuisance. A validator gets unlucky with timing, their block propagates slowly, they lose the block reward. If you're an exchange waiting for one confirmation, you might briefly see a deposit disappear. That's a product decision, not a protocol failure.
The interesting edge case is a long reorg of unfinalized blocks. Ethereum finalizes roughly every 12 to 13 minutes under normal conditions. Any block younger than the most recent finalized checkpoint is technically reorganizable without slashing, using only the fork-choice rule. A well-resourced attacker with, say, 20% of stake and favorable network conditions could in theory reorganize several epochs of unfinalized blocks. That's real, and it's why waiting for finality, not just confirmations, is the correct mental model for high-value settlements.
The question worth sitting with: if you're building anything where settlement irreversibility matters, are you asking "how many blocks deep" or "has this block's epoch been finalized"? Those are not equivalent questions. One of them has a rigorous answer.
Exchanges, bridges, and rollup settlement contracts that treat a six-block confirmation as equivalent to finality are making a category error. Not a conservative one. A categorical one. Six confirmations is a statistical argument about reorg probability. Finality is a cryptographic guarantee backed by billions of dollars in slashable collateral. Treating them as interchangeable is like reading a weather forecast and calling it a contract.
Finality is the difference between a verbal agreement and a signed contract with a punishing break clause. The verbal agreement might hold. The signed contract costs the other party something concrete to violate. The protocol doesn't ask you to trust validators. It asks them to put money where their signature is.