Episode 7 - Block Production and Mining
Block Production is the process of proposing and appending new blocks to the blockchain so that the state of the chain could be updated. The state update happens when the transactions included in the blocks are executed on the chain by all the nodes.
When there are several nodes part of the network, it is important for them to agree on some basic ground rules about how the state of the chain would be updated and how and when the blocks would be produced. In a blockchain, the block proposal, validation, and execution are done based on the rules part of the consensus algorithm being followed by the chain.
In general, blocks are produced by nodes at fixed time intervals — slots. For each block to be produced, one of the nodes is chosen based on the block production and consensus algorithm. Also, not all the nodes in a blockchain produce blocks but only the nodes participating in the process of block production.
For example, in the Bitcoin blockchain, the nodes race to solve a puzzle and the first one solving it gets to produce the block at the next slot. This process is repeated for each block. The puzzle is about finding a “hash” with a specific prefix and this requires a lot of trial and error using a lot of calculations. Arriving at a hash with the right prefix proves that the node has done the required amount of work to solve the puzzle, and hence the algorithm is called “Proof of Work”. The process of solving the puzzle and producing a block using the Proof of Work algorithm is called mining a block. The term “mining” is relevant mainly for chains following the proof of work consensus algorithm.
Block Production Rules
In different blockchain networks, different types of consensus algorithms are followed to define rules for block production. Another way of finding out which nodes produces the next block is by simply following a round-robin approach. This is generally followed in a blockchain network with a relatively smaller number of nodes.