Why is Proof of Work Required in Bitcoin?
What Is Proof of Work (PoW)? – Proof-of-work is a consensus on the blockchain that requires solving a complex math problem in an effort to prevent malicious computing resources. Such malice could be spamming emails or propagating denial of service attacks. The concept came out in 2004 when Hal Finney adapted it as a way of securing financial payments. Then, Hal Finney referred to the concept as the “Reusable proof of work” and blended it with the SHA-256 hash algorithm.
Fast forward to 2009, Satoshi Nakamoto brought the concept into widespread adoption by implementing Finney’s Proof-of-work. It is no surprise that Finney became the first recipient of the first bitcoin transaction. To date, proof of work forms the basis of a wide variety of cryptocurrencies and not only Bitcoin. The concept enables secure and decentralized consensus across blockchains.
Understanding Proof of Work
Bitcoin is a cryptocurrency held on a decentralized ledger called the blockchain. The ledger records all transactions taking place on the network and organizes them in blocks. These blocks prevent double spending, hence no use on the blockchain can spend their holdings more than once. Decentralizing or distributing the ledger makes it public, and prevents anyone from tampering with the transactions. A change on any record would automatically be deployed across the public transparent chain, and users would reject the alteration.
The standard for users to detect blockchain alterations is through hashes. Hashes are long numeric strings that validators use as proof of work. In this case, Bitcoin uses the SHA-256 hash algorithm. When someone supplies a new data set to a hash function, the system generates a different hash. Even when the change is tiny, let’s say a fraction of a transaction, the change would reflect in the original data set and the system would generate a completely new hash. However, the length of the new hash will be the same regardless of the size of the original data set.
It is not difficult to generate any hash for a set of transactions on the Bitcoin network. Therefore, the Bitcoin blockchain sets a level of difficulty to make the process exhausting. And therefore reward successful hash generators for doing the work. Usually, the system adjusts the difficulty of generating the hash once a new block of transactions is validated. It takes approximately 10 minutes to have a new block added to the network. Configuring the difficulty is made possible through the establishment of a hash target. The lower the hash target, the smaller the number of valid hashes, and therefore the more difficult it becomes to generate one hash. Practically, this translates that each hash will always begin with a long numeric string of zeros.
Remember that each set of data will always generate a single hash. Therefore, miners alter the input by introducing a nonce so as to generate a single hash below the target. The added nonce is usually an integer. Once a miner in the network finds the valid hash, the blockchain broadcasts it to the network and the protocol adds a new block to the blockchain.
The process of finding these valid hashes is called mining. The bitcoin blockchain rewards miners for successfully adding new blocks of transaction. This process of finding hashes consumes intensive computing power and hence the reward is to keep the miners running. Therefore, this is why mining is such a competitive process. No one can predict the successful miner to generate an acceptable proof of work. Therefore, sometimes a number of miners come together and pool resources in order to increase their chances of getting the valid hash. When miners come together, the result is called a mining pool. Whenever a mining pool gets the reward of freshly minted bitcoins; the miners in the pool divide the reward among themselves depending on the amount of computing power they provided.
The proof-of-work consensus makes it extremely hard to change any record stored on the blockchain. This is because such a change would require re-mining all previous bitcoin blocks, or controlling more than 51% of the network’s computing power. Having 51% of the computing power is nearly impossible and reduces the chances of anyone monopolizing the network’s power. Remember the cost of operating intensive computing machinery is high.
Whenever a part of the overall bitcoin network begins accepting a different proof of work method, the new network is called a hard fork.
Two major benefits of the PoW consensus algorithm to the Bitcoin network include the prevention of a DoS attack and enhancing mining possibilities.
The proof of work gives the Bitcoin blockchain the power to limit some user actions. A hacker would for instance require intensive resources to perform an attack. The network is still susceptible to attack. Yet the likelihood is near negligible due to the uneconomical value of performing such an attack.
Again, proof of work makes it possible for anyone to mine bitcoins regardless of their wallet holdings. What really matters is operating sufficient computation power so as to solve hashing functions and create new blocks.
Flaws of Bitcoin’s proof of work
The limitation of the proof of work consensus is the huge expenditure associated with mining new bitcoins. Mining hardware is expensive and energy intensive. Such costs can sometimes become unmanageable. While mining would initially be done through a PC, today’s mining is only possible through specialized mining equipment. Such equipment are costly, hence the need for mining pools to share the costs and the profits. However, increasing costs means only the big companies can afford to validate bitcoin transactions, and hence threatens the decentralization of the Bitcoin blockchain. Here is a pie chart of the distribution of mining power across different mining nodes:
Another disadvantage of the proof of work is miners consume both time and costly resources to generate a set of useless computations. After generating new blocks, the miners cannot apply complex calculations anywhere in business or science.
Example of Proof of Work
Below is an example of a proof of work:
A computer has to randomly engage in a hashing function for it to derive a valid output with the correct number of leading zeroes.
Block #660000 which a miner created on Dec. 4 2020, had the following hash string: 00000000000000000008eddcaf078f12c69a439dde30dbb5aac3d9d94e9c18f6. The network rewarded the miner with 6.25 BTC. The generated block #660000 will always remain the same, with a total of 745 transactions worth 1,666 BTC. This means no one will ever be able to alter the transaction, since this will result in a different unrecognizable hash. Which will equate to a fraud attempt.
Bitcoin’s Proof of Work FAQs
- What is the meaning of proof of work ?: PoW is a system that requires network validators or nodes to provide evidence that they have utilized adequate computing resources to achieve bitcoin’s consensus and upheld decentralization and security at the same time.
- How does Bitcoin’s proof of work validate a block of transactions? : Bitcoin iterates the SHA-256 complex hashing algorithm. The miner who successfully wins a round of hashing records a block of transactions and adds that block to the blockchain. This makes them the rightful winner of the bitcoin block reward. The system selects the winning miner randomly depending on the amount of computing resources they have contributed. PoW’s goal is to incentivise network validators so that they act honestly, transparently and diligently.
- Why does Bitcoin require proof of work?: The Bitcoin blockchain is decentralized and P2P by design. The need for proof of work is to achieve consensus, network decentralization and security. With proof of work, it is impossible to overtake the network since the process would be so resource-intensive. So intensive that it would outnumber the potential profit of controlling that network. Therefore making a 51% attack uneconomical at any point in bitcoin’s history. There are another consensus mechanisms that exist for other coins which do not require a lot of resources. For example proof of stake (PoS) and proof of burn. A blockchain that lacks a proof mechanism would remain vulnerable to cyber crimes and attacks.
- What’s the difference between proof of work and proof of stake? : Proof of stake selects the node that will validate a block of transactions randomly and on the basis of the amount of that coin they hold. The more tokens that a node holds, the more the mining power and the higher the chances of being chosen by the proof of stake mechanism. However, there are several flaws associated with the proof of stake consensus despite being less costly. One flaw is the high possibility of a 51% attack.
What is a 51% attack? : A 51% attack takes place when an individual or a team control the majority of bitcoin’s mining power. The individual (less unlikely) and the team could collect enough computing power to take control of the network. They could monopolize the bitcoin network or even generate their own blocks and force the system to reward them. This is because they can now prevent other miners from completing all the blocks, and hence can alter or reverse transactions. However, a 51% attack is not profitable or economical as appears in the prior explanation because it would require an enormous amount of mining power to perform. In fact, blockchain users will leave a network once they hear of a compromise. Therefore reducing the value of the coins.