Ordering in Blockchains: What Comes First, and Why It Matters
Ordering is the rule that decides what comes first. It does not, by itself, prevent forks or guarantee permanence. Ordering limits the number of valid histories, while finality is what makes a history irreversible.
This write‑up builds a clean mental model and connects it to real protocols.
The four layers (simple model)
- Ordering: what comes first?
- Consensus: do enough nodes agree on that order?
- Finality: can that order be reversed?
- Execution: apply the ordered state changes.
Think of it like writing history:
- Ordering = sentence structure.
- Consensus = group agreement.
- Finality = ink, not pencil.
- Execution = acting on the written sentence.
Why ordering alone does not kill forks
Forks happen when two histories are both valid at the same time.
If ordering is only local or temporary, forks can still exist. Ordering shrinks the fork space but does not guarantee permanence.
Example (Bitcoin):
- Miners order transactions inside blocks.
- Two miners can mine two blocks at the same time.
- The longest‑chain rule resolves later.
Result: ordering exists, but forks still happen until finality.
Finality is the fork killer
Finality is the rule that says: from this point backward, history cannot change.
In BFT systems like Tendermint or HotStuff:
- A block is committed after enough votes (2f+1).
- Reversing it would require a large fraction of validators to break the rules.
That is deterministic finality.
Ordering vs consensus vs finality vs execution (table)
| Layer | Question answered | Effect on forks |
|---|---|---|
| Ordering | What comes first? | Limits fork surface |
| Consensus | Do enough nodes agree? | Confirms an order |
| Finality | Can this change? | Destroys forks |
| Execution | Apply state changes | Uses finalized order |
Protocol examples (what this looks like)
Bitcoin (PoW):
- Ordering: miners order transactions in blocks.
- Consensus: longest chain wins.
- Finality: probabilistic (more confirmations = higher confidence).
- Execution: done early, but reorgs can happen.
Ethereum (PoS):
- Ordering: block proposer chooses tx order.
- Consensus: fork choice (LMD‑GHOST).
- Finality: checkpoint finality (Casper FFG).
- Execution: early, with stronger finality later.
Tendermint / HotStuff (BFT):
- Ordering: leader proposes a block per round.
- Consensus: 2f+1 votes.
- Finality: immediate and deterministic.
- Execution: after commit, no reorgs.
DAG‑style systems (Narwhal, Solana):
- Ordering can be delayed or partial.
- Final ordering happens after availability or time‑based rules.
- Forks may exist temporarily, but finalized order is unique.
Key takeaway
Ordering prevents unbounded divergence, but finality is what stops forks permanently. If you want predictable execution and no reorgs, you need both strong ordering and deterministic finality.
If you are comparing chains, always ask:
- How is ordering decided?
- When is ordering finalized?
- When does execution happen relative to finality?
These three answers explain most of the real‑world behavior.