Year 2038 Problem (Y2K38)
The Year 2038 Problem is caused by how some software systems store dates.
Most software that uses a signed 32-bit integer for time will overflow after this exact moment:
Most software that uses a signed 32-bit integer for time will overflow after this exact moment:
03:14:07 on 19 January 2038
One second later, many systems will wrap around to:
20:45:52 on 13 December 1901
Bitcoin and the Timestamp Field
Bitcoin stores the timestamp in the block header.
timestamp = number of seconds since 01 January 1970 (UTC)
If we store this date using 31 bits, we run out of space precisely at:
2038-01-19 03:14:07
2038-01-19 03:14:07
One Second Later…
Luckily, Bitcoin stores timestamps as 32-bit unsigned integers,
giving us time until the year 2106.
giving us time until the year 2106.
Fixing this isn’t a small update, it will likely require a hard fork.
The timestamp is part of the block header, which means any change affects the block hash itself.
👉 Follow @bitcoin_devs for more Bitcoin technical