bitcoin-dev

Year 2038 problem and year 2106 chain halting

Year 2038 problem and year 2106 chain halting

Original Postby ZmnSCPxj

Posted on: October 16, 2021 23:23 UTC

In a conversation about the Bitcoin blockchain timestamp, it was mentioned that if a series of blocks has a timestamp of 0xFFFFFFFF at the appropriate time, the chain will halt for all old clients.

It was clarified that the "not lower than" condition is strictly interpreted as "greater than" in the Bitcoin Core source code, and anything that is "lower or equal to" is rejected. Post-softfork nodes increment the timestamp by 1 on each new block starting from Unix Epoch 0x80000000, which imposes a limit on the maximum number of blocks. However, the unit is now ~10 minutes instead of 1 second, which is a massive x600 increase in the amount of time forced to hardfork. The difficulty calculation will become astronomically high since pre-softfork nodes will think that blocks are arriving at the rate of 1 per second.