user675: Reading Block Headers on the Bitcoin wiki, I learned that the timestamp in a block header is four bytes, and the timestamp in the "version" message is eight bytes. Why are there two sizes, and why isn't it more consistent?


user11412: This was discussed in the mailing list a while back:
http://sourceforge.net/mailarchive/message.php?msg_id=30824341
I'm guessing 32-bit timestamp was used by Satoshi in the original client and the 64-bit timestamp was introduced later to avoid timestamp overflow.
We may need to change (hardfork) the old 32-bit timestamp fields to 64-bit at some point. See https://en.bitcoin.it/wiki/Hardfork_Wishlist

675: <p>Reading <a href="https://en.bitcoin.it/wiki/Protocol_specification#Block_Headers" rel="nofollow noreferrer"><em>Block Headers</em></a> on the Bitcoin wiki, I learned that the timestamp in a block header is four bytes, and the timestamp in the "version" message is eight bytes. Why are there two sizes, and why isn't it more consistent?</p>

<p><img src="https://i.stack.imgur.com/42Epo.png" alt="Enter image description here"></p>
 11412: <p>This was discussed in the mailing list a while back:
<a href="http://sourceforge.net/mailarchive/message.php?msg_id=30824341" rel="nofollow">http://sourceforge.net/mailarchive/message.php?msg_id=30824341</a></p>

<p>I'm guessing 32-bit timestamp was used by Satoshi in the original client and the 64-bit timestamp was introduced later to avoid timestamp overflow.</p>

<p>We may need to change (hardfork) the old 32-bit timestamp fields to 64-bit at some point. See <a href="https://en.bitcoin.it/wiki/Hardfork_Wishlist" rel="nofollow">https://en.bitcoin.it/wiki/Hardfork_Wishlist</a></p>
