Monday, April 30, 2018

Task of miners on Bitcoin network

Once a node connects to the Bitcoin network, there are several tasks that a Bitcoin miner performs.

  • Synching up with the network: Once a new node joins the bitcoin network, it downloads the blockchain by requesting historical blocks from other nodes. This is mentioned here in the context of the bitcoin miner; however, this not necessarily a task only for a miner.
  • Transaction validation: Transactions broadcasted on the network are validated by full nodes by verifying and validating signatures and outputs.
  • Block validation: Miners and full nodes can start validating blocks received by them by evaluating them against certain rules. This includes the verification of each transaction in the block along with verification of the nonce value.
  • Create a new block: Miners propose a new block by combining transactions broadcasted on the network after validating them.
  • Perform Proof of Work: This task is the core of the mining process and this is where miners find a valid block by solving a computational puzzle. The block header contains a 32-bit nonce field and miners are required to repeatedly vary the nonce until the resultant hash is less than a predetermined target.
  • Fetch reward: Once a node solves the hash puzzle, it immediately broadcasts the results, and other nodes verify it and accept the block. There is a slight chance that the newly minted block will not be accepted by other miners due to a clash with another block found at roughly the same time, but once accepted, the miner is rewarded with 12.5 bitcoins (as of 2018) and any associated transaction fees.


Thrilled to see that my book Mastering blockchain - the third edition is a best-seller at Amazon!