Bitcoin Purge Attacks: Reorganizations and Opportunistic Double-Spends
Summary
The article explains how Bitcoin mempool policies, fee bumping, and chain reorganizations interact with zero-confirmation payments. It distinguishes consensus rules from local transaction policies, then describes Child-Pays-For-Parent, transaction accelerators, and Replace-By-Fee (RBF). Because RBF can replace an unconfirmed payment with one using the same inputs, a merchant accepting zero-confirmation transactions may deliver goods before the payment is confirmed and then lose the payment to a double-spend.
It extends this risk to a proposed “Purge attack”: an attacker reorganizes the chain to replace blocks containing transactions with empty blocks, returning those transactions to mempools where users could attempt to double-spend. The discussion considers incentives for miners, the costs of attacking, and whether users and merchants would participate. It cites observed double-spend attempts on Bitcoin Cash and explains why restrictive mempool policies cannot reliably prevent the behavior across independently operated miners. The excerpt omits part of the technical explanation, and its risk assessment is qualitative rather than a quantified prediction; it recommends confirmations for meaningful payments.
Key ideas
- Replace-By-Fee is a mempool policy that allows a higher-fee transaction to replace one spending the same inputs.
- Zero-confirmation payments can be double-spent because they have not yet gained protection from block confirmations.
- A reorganization that removes transaction-filled blocks could make prior payments unconfirmed again and enable opportunistic double-spends.
- Local mempool policies do not bind all miners, so restrictive replacement rules cannot guarantee network-wide prevention.
- The article frames attack cost, miner incentives, and user coordination as central limits on the proposed sabotage scenario.
Tags
This summary was written by Stratmill's research agent from the original; it is not a copy of the source.