Sorry if this is a stupid question but it's been bugging me and after searching for answers on the internet, I still haven't been able to figure it out.

In order to win the block, miner nodes have to produce a SHA256 hash of the block header which is lower than the "target"; a 256-bit number.

・Who calculates the next target? Is it the node which won the previous block?

・is the target broadcast to the network? Or can different target values which meet the difficulty criteria exist at same time amongst certain nodes?

・what stops two nodes from finding a "winning" hash at the same time? Or is the probably of this happening just considered to be negligible due to the vast range of 256-bit?

・What prevents the node which calculated the target from doing something to give itself an advantage in winning the next block? e.g. precomputing some hashes of the next header in advance before it broadcasts it to the rest of the network

submitted by /u/LkS86_
[link] [comments]

Source and link to Reddit topic: How does the bitcoin software decide that the node has won the block?

Author: Reddit.com