Bitcoin Mining — A Technical Overview

Blockchain Experts
Blockchain Experts
Published in
3 min readDec 5, 2018

--

The mining is considered as the most important as well as an interesting concept when bitcoin is taken into consideration.

Mining is the process by which new transactions are validated and added to the so-called ‘blockchain’. The mining process is not only confined to bitcoins, but also for all other blockchains which rely on Proof-Of-Work(POW) consensus. The process demands a dedicated mining hardware and thus, not all nodes are involved in mining. Those who are participating in mining process are known as ‘miners’.

Before digging deeper into the concept, let’s have an overview. Being a decentralized system, transaction validation is often questioned in both Bitcoin as well as Ethereum. In POW, the one with highest computational power is allowed to approve the transaction. But how do the protocol distinguish which node is with highest computational power? It is difficult or in other words, it requires a central entity for this decision, which is impossible in the case of P2P applications like Bitcoin. So, what the protocol does is, to allow all nodes to compete with each other to solve a cryptographic puzzle. Those who possess higher computational power has a higher chance to solve first. Those who solve first proposes their block to others in the hope that others also accept it. If so, the miner is credited with a block reward. Therefore, the protocol is actually selecting the node with the highest computational power implicitly. The process repeats for every new block.

When someone makes a transaction in bitcoin blockchain, they broadcast it to the network. The miners listen to this and engage in transaction verification. Miners verify that the transactions aren’t performed already. For this, miners always maintain the latest version of the blockchain. They assemble a new block and add the verified transactions to it. Next, they should solve a cryptographic puzzle. So what do miners actually do? Here, the mission is to find a hash value for the header of the newly assembled block.

- A block header consist of the following details:
1. Hash of the previous block
2. Merkle root (The transactions in a block are stored in a Merkle tree and its Merkle root is stored in block header)
3. Nonce

  • Finding hash value using a hashing algorithm(Bitcoin uses SHA256 hashing algorithm) is not a big deal. Every node can do that. Therefore, a difficulty level is associated with it, to make the nodes compete with each other. The difficulty level is a measure of how difficult is to find the hash value within a given target set. Difficulty level shrinks the set of hash values that a block can have. Without difficulty level, a block can have any of the hash value within the super gigantic set of 2256 possibilities !!!(since bitcoin uses SHA256 and it has 256 bits). By associating a difficulty level, the target set is reduced considerably.

Continue Reading…. Bitcoin Mining

| Follow us on Twitter : @Blockchain_E

| Related Topics:

Blockchain in Supply Chain Management | Crypto Pump and Dump

--

--

Blockchain Experts
Blockchain Experts

"WE DEVELOP AND MANAGE BLOCKCHAINS" If you are planning to do some projects in the blockchain, you are at the right place.