Author: Jonathan Toomim (Toomim Bros) 2015-10-07 15:46:08
Published on: 2015-10-07T15:46:08+00:00
In an email discussion on a soft fork upgrade for Bitcoin, Anthony Towns suggested that "a soft fork that only forbids transactions that would previously not have been mined anyway" would be the best solution. However, another participant pointed out that attackers can create transactions that exploit the difference in validation rules between old and new nodes, potentially leading to guaranteed orphaned blocks and easy double-spending. The attacker could send 1 BTC to an address with a script that an old node would consider as OP_NOP, but invalid according to more restrictive rules. They could then spend the same 1 BTC in a way that is invalid according to the stricter rule, but valid according to OP_NOP, and include a hefty fee. If a miner on the old version includes this transaction into a block, it would make the block invalid according to the new rules and rejected by new-client miners. The merchant accepting the transaction would see one or two confirmations and ship the goods, while the attacker could still double-spend the coin using new nodes with a valid signature until OP_CLTV matures. This issue could persist as long as miners continue to mine old-version blocks, regardless of their frequency.
Updated on: 2023-06-10T23:10:09.745492+00:00