Implement BIP66 (0.8) #5765

Merged
merged 3 commits into from Feb 17, 2015

Conversation

Projects
None yet
4 participants
Owner

sipa commented Feb 6, 2015

No description provided.

Owner

laanwj commented Feb 9, 2015

utACK

Contributor

sdaftuar commented Feb 11, 2015

Tested deployment using the same framework as I used in the other similar pulls (after first adding regtest support to the code) -- worked as expected.

I'm not sure whether this is even worth mentioning, but I noticed that there are a couple places in the code where we check that a signature produced by bitcoind passes verification (rpcrawtransaction.cpp:519 and script.cpp:1639), and to be completely consistent with the change to enforce DERSIG in the mempool, perhaps those calls to VerifyScript should be done with DERSIG as well? (Right now they're called with SCRIPT_VERIFY_P2SH | SCRIPT_VERIFY_STRICTENC.)

Owner

sipa commented Feb 11, 2015

@sdaftuar Thanks for the tests, and nice catch, though it shouldn't matter. When combined with the standardness requirements, STRICTENC and DERSIG should be identical (they can differ when the result of a CHECKSIG is negated, but there are no standard scripts that do so).

@laanwj laanwj merged commit 534e6da into bitcoin:0.8 Feb 17, 2015

@laanwj laanwj added a commit that referenced this pull request Feb 17, 2015

@laanwj laanwj Merge #5765: Implement BIP66 (0.8) 9d11aba
Contributor

rebroad commented Jul 7, 2015

Ok so given how this fork has gone horribly wrong - i.e. people advertised they would support BIP66, so the software switched over to the new rules only to discover that mining continues with the old rules - I propose that future hardforks include a FALL-BACK in the event that it is determined that not 95% is actually implementing the new rules. Is this possible to do for future hard-forks?

Owner

sipa commented Jul 7, 2015

Contributor

rebroad commented Mar 17, 2016

@sipa it would be possible I am sure, by analysing the InvalidBlocks that are coming though and checking if they would be valid in the case of a fall-back - if there are a sufficient number of these invalid blocks, then it would trigger the fall-back.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment