Matt pointed out some time ago that there existed a minor DOS attack where a node in its initial block download could be wedged by an overwrite attack in a fork created between checkpoints before a time where BIP30 was enforced. Now that the BIP30 timestamp is irreversibly past the check can be more aggressive and apply to all blocks except the two historic violations.
Apply BIP30 checks to all blocks except the two historic violations. #1814
pull gmaxwell wants to merge 1 commits into bitcoin:master from gmaxwell:bip30_harder changing 1 files +6 −3-
gmaxwell commented at 12:16 AM on September 10, 2012: contributor
-
ab91bf39b7
Apply BIP30 checks to all blocks except the two historic violations.
Matt pointed out some time ago that there existed a minor DOS attack where a node in its initial block download could be wedged by an overwrite attack in a fork created between checkpoints before a time where BIP30 was enforced. Now that the BIP30 timestamp is irreversibly past the check can be more aggressive and apply to all blocks except the two historic violations.
-
gmaxwell commented at 12:22 AM on September 10, 2012: contributor
I tested by doing initial block downloads on Bitcoin and testnet. Also tested on bitcoin with each of the hashes broken to make sure it rejected the violators.
-
gavinandresen commented at 3:14 PM on September 10, 2012: contributor
ACK
-
BitcoinPullTester commented at 7:31 PM on September 10, 2012: none
Automatic sanity-testing: PASSED, see http://jenkins.bluematt.me/pull-tester/ab91bf39b7c11e9c86bb2043c24f0f377f1cf514 for binaries and test log.
-
Diapolo commented at 8:32 PM on September 10, 2012: none
What happend to that 2 blocks, which forces you to special-case them? Perhaps an easy answer is possible ;).
-
gmaxwell commented at 8:39 PM on September 10, 2012: contributor
@Diapolo The miner used an identical pubkey and extranonce, resulting in a duplicate coinbase transaction. (which replaced the prior one, making the earlier one effectively unspendable). This has happened twice... an expensive mistake.
-
laanwj commented at 4:33 PM on September 11, 2012: member
Great idea, it minimizes the window in which exceptions to the rules are possible.
ACK
-
sipa commented at 2:20 PM on September 12, 2012: member
ACK
- gavinandresen merged this on Sep 12, 2012
- gavinandresen closed this on Sep 12, 2012
- KolbyML referenced this in commit 2018fca21d on Dec 5, 2020
- KolbyML referenced this in commit c65d0368a0 on Dec 5, 2020
- DrahtBot locked this on Sep 8, 2021
Milestone
0.7.0