What does this syntax mean?
It's C++ for "set the scriptSig of the first input in the first transaction in this block to have the same contents as a script with the encoded nTime followed by the encoded nExtraNone".
Exactly what elements does the script sig contain and in what order?
It contains the block's nTime
, followed by by the nExtraNonce
.
How is the extra nonce formatted?
An example from this time period would be in the scriptSig from the coinbase transaction of block #185000:
04d508de4f02e82d
If we parse this script sig, it is:
04 -- Number of bytes in group of data
d508de4f -- 4 bytes. The little endian timestamp.
02 -- Number of bytes in group of data
e82d -- the little endian extranonce
Notice when you reverse the bytes in d508de4f
, you get 4fde08d5
, which when you convert it to a timestamp is Sun Jun 17 2012 12:41:57 GMT-0400 (EDT)
. When you byte-reverse e82d
(reversed is 2de8
), and decode an integer from the hex, you get 11,752 for an extranonce value.