Full Disclosure: CVE-2021-31876 Defect in Bitcoin Core's bip125 logic



Summary:

Ruben Somsen, a Bitcoin developer, has discovered a bug that affects the deployment of spacechains. The idea behind spacechains is to allow for fee-bidding Blind Merged Mining by creating one transaction for each block, to which anyone can attach a block hash. This bug gets in the way of being able to deploy spacechains and breaks the intended fee-bidding mechanism. The preferred mechanism utilizes sighash_anyprevout and is not affected, but there is also a practical variant that could be used without requiring the anyprevout soft fork, which unfortunately does seem to be impacted. Each pre-signed TX is RBF enabled, so each CPFP transaction inherits RBF as well. But if inherited signalling does not function, the first person who makes a CPFP transaction can simply disable RBF and win the auction. You can find a diagram of this process in this spacechains presentation. It is recommended that any in-protocol competing transactions explicitly signal RBF to prevent pinning attacks. Revault is not vulnerable since all transactions signal RBF and there is no way to sneak a non-signaling competing transaction.


Updated on: 2023-06-14T20:41:56.930238+00:00