This paragraph describes the basic steps involved in running a network using blockchain technology.
When a new transaction occurs, it is sent to all nodes in the network.
Nodes are essentially computers or servers that participate in maintaining the network.
Each node then collects all new transactions and creates a block of these transactions.
The next step is to find a difficult “proof-of-work” for this block.
This is a computational process that takes time and effort, and is designed to ensure that the network is secure and reliable.
When a node finds a proof-of-work for its block, it broadcasts the block to all other nodes in the network.
Each node then checks the block to ensure that all the transactions in it are valid and not already spent.
If everything checks out, the nodes express their acceptance of the block by working on creating the next block in the chain, using the hash (a unique identifier) of the accepted block as the previous hash.
In this way, a chain of blocks is created, with each block representing a set of transactions that have been verified and accepted by the network.
Nodes always consider the longest chain to be the correct one, and they will keep working on extending it.
If two nodes happen to create different versions of the next block simultaneously, some nodes may receive one version before the other.
In that case, they start working on the first version they received, but they also save the other version in case it becomes longer.
Eventually, the tie will be broken when one branch becomes longer than the other, based on the work put into it.
New transaction broadcasts do not need to reach every node in the network, as long as they reach many nodes.
Similarly, block broadcasts are designed to be tolerant of dropped messages – if a node misses a block broadcast, it will request the block when it receives the next one.