Version bits: Why did BitcoinXT choose to set THREE bits to 1 (0x20000007) to flag BIP101?

2

I understand the BIP9 version bits base is 0x20000000 because the BIP specifies that the first three bits must be 001

Bitcoin Classic adds one more "on" bit 0011... to make 0x30000000

Why did BitcoinXT add THREE bits to the end to make 0x20000007 instead of just flagging-on one single bit like classic? Or simply use 0x20000001?

pinhead

Posted 2016-04-13T16:59:37.620

Reputation: 2 356

A correction is needed to the question. BIP9 specifies the first three bits are 001, so the hex version will be at least 0x20000000. BIP109 uses the fourth bit to signal support, so the first four bits are 0011 with the rest zero, so the version is `0x30000000.Tom Harding 2016-04-14T16:46:07.723

@TomHarding thanks for catching that, editedpinhead 2016-04-14T16:49:04.653

Answers

2

Bitcoin XT versions 0.11A through 0.11D supported the withdrawn BIP101, which set version = 0x20000007 as a best-guess nod toward the developing versionbits standard, while trying to maximize backward compatibility with the ways nodes might check for compatible versions.

Bitcoin XT version 0.11E supports BIP109, identical to Bitcoin Classic.

Tom Harding

Posted 2016-04-13T16:59:37.620

Reputation: 336

"best-guess nod toward the developing versionbits standard" -- that's what I'm curious about. What were they thinking?pinhead 2016-04-14T16:49:30.560