bitcoin-dev

Year 2038 problem and year 2106 chain halting

Year 2038 problem and year 2106 chain halting

Original Postby vjudeu at gazeta.pl

Posted on: October 17, 2021 07:24 UTC

The post describes the increment of timestamp in new blocks by post-softfork nodes.

It suggests that the fastest rate can be achieved by incrementing timestamps once per 6 blocks, which would mean x3600 increase. However, the difficulty is always multiplied by four, and thus time needs to be increased once per difficulty change to keep it on a real level. The fastest rate would result in the difficulty calculation becoming astronomically high since pre-softfork nodes would think that blocks are arriving at the rate of 1 per second. The context also discusses what happens if a series of blocks has a timestamp of 0xFFFFFFFF at the appropriate time. The chain will halt for all old clients because there is no 32-bit value greater than 0xffffffff. The Bitcoin Core source code rejects timestamps that are "lower or equal to" the current timestamp. Post the soft fork, nodes just increment the timestamp by 1 on each new block starting at Unix Epoch 0x80000000. Even though this imposes a limit on the maximum number of blocks, the unit is now ~10 minutes instead of 1 second, a massive x600 increase in the amount of time forced to hardfork.