[Bitcoin-development] Reconsidering block version number use

Luke-Jr luke at dashjr.org
Sun Jul 22 20:52:25 UTC 2012


It just occurred to me that the block version number could easily be used as a 
cheap "extra nonce" right now. Considering that we will probably see lots of 
ASIC miners running at 1 TH/s per rig before the end of 2012, it might be 
desirable to save the block version for this purpose.

The current block height in coinbase addition currently proposes to use block 
version 2. However, the protocol change is in fact to the coinbase 
transaction, not the block itself (which really doesn't have any extensibility 
without a hardfork anyway). Perhaps we should consider bumping the coinbase 
transaction version number to 2 for this instead?

Also, Jeff noticed that block 190192 has version==2 without a valid block 
height in the coinbase. I suspect this may be the result of combining the 
current blockheight-in-coinbase pullreq with P2Pool. This means that if we go 
forward with the version==2 marker, we will forever need to make an exception 
for that block. Moving the version==2 to the coinbase transaction version also 
means whoever makes that transaction (thus deciding whether to put the height 
in it or not) also sets the version number - instead of the block version 
coming from bitcoind and the coinbase transaction coming from P2Pool or other 
software.

Thoughts?

Luke




More information about the bitcoin-dev mailing list