Part II: The Bitcoin Protocol
The second of a three-part article on bitcoin mining that deals with its rewards and puzzles
Bitcoin mining, a pillar of the bitcoin protocol, is one of the three ways of obtaining bitcoin – the other two being: receiving bitcoin through transactions or from a cryptocurrency exchange. The mining process involves confirming bitcoin transactions on the blockchain and filing them to the public ledger without any centralised authority. The veracity of the transactions is authenticated solely by the mutual agreement between the computers building the blockchain.
For a transaction to be confirmed, miners are required to solve complex cryptographic puzzles through which the validity of the transaction is established mathematically. This “process of trying numerous solutions until you get the right one is known as Proof of Work (PoW).”
Imagine the computers verifying transactions – the backbone of the blockchain – as providing a service for the entire blockchain. These miners supply the essential computing and processing power that keeps the entire blockchain functional; and as part of the Bitcoin protocol, are rewarded with transaction fees and a block reward in return.
- Transaction fees: For every confirmed bitcoin transaction, users need to pay a certain fee to bitcoin miners for confirming the transaction. The measure of computational power required to verify transactions and add blocks to the PoW blockchain – called the hashrate – is a key determinant of the extent of these transaction fees.
“A higher hash rate”, US-based financial services firm Robinhood writes: “means more computing power is required to verify and add transactions to that cryptocurrency’s blockchain. This makes that cryptocurrency more secure because it would take more miners—and cost more in energy and time—to take over the network.” This fee, however, is a rather small part of the mining reward.
With hash rates expected to go down in the future, miner fees are set to get significantly higher over the medium-term.
Rising transaction fees are a double-edged sword though. On the Ethereum blockchain, for example, these transaction costs – called gas fees – are almost as volatile as the price of Ether itself. Many opine that its exorbitantly high rates coupled with this volatility may prove to be a key hurdle in the platform’s scalability.
- Block reward: Once the miner confirms the transactions, each solved block of transactions is added to the Bitcoin blockchain. For this action the miner gets a reward, known as a block reward (currently at 6.25 BTC per block).
The Math of it
The process of mining bitcoin isn’t easy, at least computationally. It involves solving three major mathematical problems: (i) hashing; (ii) the byzantine generals problem; and (iii) the double-spending problem.
First things first, hashing is the process of converting a given key to another value. The hash function, or simply, hash, takes an input of any length and creates a randomised output of a predetermined length. The same output must be created every time the same input is given – but changes to even one input character can change the output drastically. This essentially makes it impossible to guess the inputs based solely on the outputs.
In order to solve the hash, the miner must start with the data available in the block header – the time-stamp, the previous block hash, the hash of all previous transactions up to that point, the version number, the target hash, and the primary area of focus for most miners – a string of numbers called the nonce.
Coinformantwrites: “This string of numbers is attached to the hashed contents of the previous block, and afterwards it’s hashed. If the newly generated hash is equal to or less than the target hash, the new hash can be accepted as a solution to the math problem, and then the block can be attached to the Bitcoin blockchain, and of course, the Bitcoin miner can get the block reward.”
[Continue reading in Part 3 to find out about the byzantine generals problem; the double-spending problem and the 51% Attack.]