Hey,
When a fork occurs, are all nodes conscious of the fork earlier than the subsequent block or is there a chance {that a} fork is occurring and a few nodes aren’t conscious of it ?
If there’s a chance of it taking place, how do nodes on the orphaned block get the knowledge of all different blocks on the opposite fork. To my understanding they may get a brand new block with the next top, and can select to comply with it, nonetheless they don’t have the earlier blocks to validate the block they acquired. Is there a message of ship me all blocks after this top that nodes can talk to one another ?
Sorry if it isn’t clear or if would not make sense, I’m additionally attempting to know 51% assaults and the way making a fork ‘silently’ after which broadcasting it to the community can work.
some nodes might not know, and continue on their merry way. if no one mines for the resulting shitcoin, then that forked coin is essentially dead
Not all clients will necessarily be aware of a fork. I believe the relevant piece of documentation you are looking for is the [getblocks](https://en.bitcoin.it/wiki/Protocol_documentation#getblocks) section of the protocol.
>Is there a message of send me all blocks after this height that nodes can communicate to each other ?
Yes. That’s actually how new nodes download the blockchain. They connect to an existing node and say, “Tell me the hashes of all the blocks in your most-work chain, starting at the genesis block,” and then they start requesting the data for each block.