bitcoin-dev

Anti-transaction replay in a hardfork

Anti-transaction replay in a hardfork

Original Postby Natanael

Posted on: January 25, 2017 01:22 UTC

On January 24, 2017, a proposal was made on the Bitcoin-Dev mailing list regarding transaction protection from anti-replay in the event of a hardfork.

The proposal stated that transactions created before the proposal would not be protected and needed to be accepted by any potential hardforks to maximize their value. To achieve this, old-format transactions could be made valid only when paired with a fork-only follow-up transaction. This introduces new statefulness into the block validation logic, but it is necessary for maximal fork safety. Meanwhile, the old network should soft-fork in an identical rule with a follow-up transaction format incompatible with the fork. This means that old transactions cannot be replayed across forks/networks because they are not valid when stand-alone. Wallet clients need to be updated or paired with software that intercepts generated transactions and automatically generates the correct follow-up transaction for it (old network only). The rules state that old-format transactions cannot reference new-format transactions, even if only a softfork change differs between the formats. This prevents an unnecessary amount of transaction pairs generated by old wallets. Therefore, old outputs can be spent, but not new ones.

Bitcoin Logo

TLDR

Join Our Newsletter

We’ll email you summaries of the latest discussions from authoritative bitcoin sources, like bitcoin-dev, lightning-dev, and Delving Bitcoin.

Explore all Products

ChatBTC imageBitcoin searchBitcoin TranscriptsSaving SatoshiBitcoin Transcripts Review
Built with 🧡 by the Bitcoin Dev Project
View our public visitor count

We'd love to hear your feedback on this project?

Give Feedback