Proof of Work (PoW) Mining Explained: How Does it Work?
In blockchain technology, proof of work refers to data pieces difficult to find but easy to verify for others. PoW a certain number of rules. Proof of work can have a low probability and be random. You will require a lot of trial and error.
For example, the hashcash proof of the work method is what Bitcoin uses. The whole purpose of using this system is to prevent frivolous or malicious uses of computing power. Sometimes people might use computing power to send spam emails One launch DDOS (Denial of Service) attacks.
The first person to come up with this idea of proof of work was Hal Finney. He called the concept ‘reusable proof of work.’ They introduced it in 2009 when Bitcoin became the first application to use Finney’s idea. Finney was also the first recipient of the first bitcoin transaction.
To understand the proof of work in this context, we will focus on Bitcoin. As we explained in earlier topics, bitcoin is a digital currency underpinned by the blockchain. As you know by now, the blockchain is a distributed Ledger.
It contains all the Bitcoin transactions which exist in blocks. This ensures that no one can spend their Bitcoin twice.
If any tampering happens, users can detect it using hashes. The long string of numbers that serve as proof of work is what we call hashes. If you remember, we said that if you could change one hash, you’d have to change the others in the entire blockchain or it would detect you.
There is something we call the ‘Avalanche effect’ where the smallest changes to any piece of the original data give birth to a new and invalid hash. The size of the original set does not matter because the hash which comes from this change by that function is the same length.
The hash is a one-way function and cannot be used to get the original data. It can only check the data that generated the hash, for consistency.
What We Consider ‘Work’?
Using a modern PC, generating any hash for transactions using Bitcoin would be easy. To make this process ‘work’, the level of difficulty has to be adjusted. We do the change so that when a new block is mined, which happens about once every 10 minutes, the difficulty changes.
To make the difficulty levels work, we set a target for the hash. The lower the target you have to reach, the fewer the set of valid hashes. This makes it hard to generate one. Because of the long strings of numbers, detecting fraud is very easy.
Let’s say one block contains 2,012 transactions that involve 100 Bitcoin. If the amount Changes by 0.001, the hash produced would be unrecognizable. The network would reject this as a fraud.
A set of data can only generate one hash. How then do miners make sure they generate a hash which is below the target?
Miners have to change the input by introducing an integer which we call a nonce. They call it that because they use it only once. When the valid hash is found, it is broadcast to the network, and they add the block to the blockchain.
Is this seeming a little too complex to understand? Well, the thing is that it isn’t. When you get to the mining process and start doing it practically, you will not have much trouble understanding what is happening.
Mining is the Lottery
In comparison, mining is more like a lottery than the hundred-yard dash. Statistically, someone will generate an acceptable ‘proof of work’ once about every 10 minutes. Who this person will be, is anybody’s guess.
That is why users have created mining pools to increase the chances of mining more blocks. This way they can generate transaction fees and for a short time get the reward of newly created bitcoins when they do this.
To alter proof-of-work is very hard. It would require re-mining all subsequent blocks. The system also makes it hard for someone or a pool of miners to monopolize the network’s computing power.
The machinery and power required when completing hash functions are very expensive.
How Do You Compete with Millions of Miners?
Miners have to get the right hash. They also have to be the first to do it. Not too long ago, mining was easy and possible using your home PCs. As time went by, miners started realizing that they could do more with better equipment.
It did not take long for the geeks and nerds of the world to realize that you could gain an edge over the competition by using gaming-level PCs. They have better graphics cards used in rendering games. These GPU cards gave a boost to the home computers and their owners started dominating the game.
By 2013, miners of the bitcoin currency were using computers customized for mining cryptocurrency.
We know the specialized mining computers as Application-Specific Integrated Circuits (ASIC). They can cost several hundred dollars to tens of thousands if you want to buy one. The current price of Bitcoin at the time of writing this is roughly $9,330 and the reward for completing a block is 12.5 coins. That reward is equal to $117,000. If you can invest in an expensive ASIC, it might be worth it.
Today, mining bitcoin is so competitive that the only profitable way to do it is by using the most up-to-date ASICs. When using the older models of computers, the energy cost and revenue generated do not match. Even with the latest desktop computers, you might not have the ability to compete with mining pools.
Statistically, 80% to 90% of Bitcoin computing power comes from mining pools and companies. It is difficult as an individual to compete against the mining pools and companies.
Can Bitcoin Be Sustainable?
With the odds being what they are in a network with so many members, verifying one block of transactions roughly every 10 minutes, questions Bitcoin’s mining profitability. However, you need to know that 10 minutes is not a rule but a goal.
The Bitcoin network has about 7 transactions which translate to a block being added to the blockchain every 10 minutes. To compare, Visa can process around 24000 transactions per second.
Because the number of users of Bitcoin continues to grow, the number of transactions made every 10 minutes will eventually be higher than the number of transactions that the blockchain can process in 10 minutes.
When we reach this point in the network, waiting times for transactions will continue to get longer unless we change the Bitcoin protocol.
Proposed Changes and the Bitcoin Hard Fork
Changing the Bitcoin protocol hinges on scaling. Bitcoin miners will agree that something needs to happen to address scaling. However, there is less consensus about how it should be done.
As of now, they have made two proposals to address this problem. Developers say that;
- We can decrease the amount of data needed to verify each block
- We can increase the number of transactions that each block can store
The first solution would make sense when we have fewer data to verify for every block. It would be faster and cheaper for Miners. The second solution would allow the processing of more information every 10 minutes by increasing the size of the Block.
As of July 2017, miners and mining companies represented 90% of the network computing power in the Bitcoin network. They voted to start a program that would decrease the amount of data needed to verify each block. They went with the first solution.
The solution that they came up with was challenged less than a month later when a group of miners and developers set in motion a hard fork. They left the Bitcoin network to create a new currency that used the same code base as Bitcoin. This new group agreed that they should solve the scaling problem, but they went with the first solution and we now know the resulting currency as ‘Bitcoin Cash.’
They increased the block size to 8 MB to speed up verification processes and allow about two million transactions in a day. By November 6th, 2019, bitcoin cash was valued at $302 as compared to bitcoin’s $9,330.
Leave a Comment