nTime: blocks must have a higher timestamp than the median of the 11 previous blocks, and a lower timestamp than two hours in the future of the validating node's own clock. Assuming a regular block interval of ten minutes and a correctly set local time, the block can therefore be stamped between about one hour in the past and two hours in the future.
nBits: This encodes the block target (the reciprocal of the difficulty) and cannot be changed.
nVersion: The version field is 32 bits, and must be at least 2, 3 or 4 (i.e. the first three bits must be 010
, 011
, or 001
due to nVersion being encoded little endian). When using version 4 (001…
) the remainder of the bits is defined by BIP9 which has attached meaning to some of the last few bits that have been previously used to signal activation of soft forks.
All remaining bits beside the above mentioned can be used to mutate the block header. They are for example used for "overt ASICBOOST"-style mining.