Web Interstitial Ad Example

block – When chains branch, are there multiple UTXO sets?


Each node considers the valid chaintip with the most-work that it knows about the canonical state of the network. Only this “best chain” matters to establish the state of the UTXO set. If another chaintip overtakes the prior best chain, the node reverts blocks until it arrives at the highest common previous block and then applies the new chain.

The nodes only need to assess the header of the block. Each block mentions its predecessor in the header, so the node can see where a block attaches to the blockchain. If a new block header is not leading to a better chaintip, nodes will not even retrieve the block. Pieter recently wrote a detailed description of how block synchronization works today, if you want to understand the process in more depth.

Of course a miner could extend whatever chaintip they want, however not only are stale chaintips easy to identify, the miners will also lose money on doing so:
The best chain is a single-file connection between Genesis block and the best chaintip. Every block has exactly one predecessor and you can only spend coinbase transaction outputs (i.e. the mining reward) when they have 100 confirmations. Stale chaintips are not part of that best chain, and therefore the block rewards are paid to outputs that don’t exist in the best chain. Mining on top of invalid blocks costs you the same effort, but nets you zero revenue.


Source link