Version bits: Does Classic uses the same flags in the block header as XT?

Peter R

Well-Known Member
Aug 28, 2015
1,398
5,595
Does Classic uses the same bit flags in the block header as XT?

I'm curious because if it does, then the ~500 existing XT nodes technically don't have to upgrade to remain compatible should the 2 MB "Classic" fork get activated.

[Note that Unlimited nodes are already compatible with both XT and Classic.]
 
  • Like
Reactions: AdrianX

solex

Moderator
Staff member
Aug 22, 2015
1,558
4,693
Agreed. It is important that existing XT non-miners are fine with classic blocks >1MB.

Edit: the proposed changes for Classic show compatibility, also another doubling to 4MB in 2 years.

https://github.com/bitcoinclassic/bitcoinclassic/pull/3/files

FORK_BLOCK_VERSION = 0x20000008

which is the XT version +1

We are also going to need a priority BUIP to synchronise BU with Classic for sigops.
 
Last edited:
  • Like
Reactions: YarkoL and sickpig

Peter R

Well-Known Member
Aug 28, 2015
1,398
5,595
@solex

I'm confused. A non-mining XT node needs to see 750/1000 blocks with the correct version bits before it will accept blocks greater than 1 MB. If the Classic block version is 1+XT version, will 750/1000 such blocks still trigger the XT nodes?

Obviously Gavin and Jonathan would have thought about this, but I could imagine them both wanting to make it compatible, or wanting to require the XT nodes to upgrade.
 

solex

Moderator
Staff member
Aug 22, 2015
1,558
4,693
@Peter R
You are right, I didn't consider the trigger itself, just the higher block version.
Actually it begs the question of how safe it would be for XT nodes because, if the trigger was met, they would accept blocks >2MB right off, so a miner propagating a 3MB block would have XT nodes accepting it while it was being rejected by Classic.
 

Peter R

Well-Known Member
Aug 28, 2015
1,398
5,595
@solex

Yes, that is the logic why they may have NOT used the same version bits. I ventured over to the Classic Slack forum to ask but didn't get a good answer. Don't feel like digging through the code myself...

Personally, I think ideally the fork should activate the XT nodes too. No one is going to mine a 3 MB block and even if they did, it would just get orphaned 10 minutes or so later--no different than the few orphans that occur each day anyways.
 
  • Like
Reactions: solex

AdrianX

Well-Known Member
Aug 28, 2015
2,097
5,797
bitco.in
I was told on r/bitcoixt that it does. So XT nodes don't need to fork if it's implemented.

Obviously it's subject to change.


Who knows what classic will be lots of attacking going on.

Hell even LukeJr is in there trying to get Classic to change the mining algorithm so it forks off Bitcoin.