What is Proof of Work?
By: Ofir Beigel | Last updated: 1/22/23
Proof of Work (POW) is the consensus mechanism used in Bitcoin mining. What does this confusing sentence mean? Keep on reading to find out.
What is Proof of Work Summary
Proof of Work is a term for the rules dictating who gets to update transactions on the Bitcoin blockchain.
It basically means that in order to gain the right to update the next block of transactions, you need to provide proof to a challenge that is hard to solve, yet can be easily verified by the network. Hence providing proof that you’ve done work in solving it.
That’s Proof of Work in a nutshell. For a more detailed explanation keep on reading, here’s what I’ll cover:
Don’t like to Read? Watch Our Short Video Tutorial Instead
1. What is a consensus mechanism?
Bitcoin, at its core, is a decentralized ledger that is updated by everyone. Since you can’t really have each person having his own version of the ledger, you need to decide on some sort of consensus mechanism.
A consensus mechanism is a fancy way of describing rules that everyone agrees on, in regards to who gets to update the ledger. There are many types of consensus mechanisms, for example:
- Proof of Work (POW)
- Proof of Stake (POS)
- Delegated Proof of Stake (DPOS)
- Proof of Capacity (POC)
- Proof of Elapsed Time (POET)
- Practical Byzantine Fault Tolerance (PBFT)
- Directed Acyclic Graph (DAG)
- And so on….
Each one of these consensus mechanisms has different rules describing how you update a public ledger.
2. What is Proof of Work?
Bitcoin mining is a term given to how new blocks of transactions are updated in the Bitcoin ledger, known as the blockchain.
In order for a miner to gain the right to update the ledger, he will have to provide an answer, also known as a proof, to a specific challenge. This proof is difficult to produce but is very easily validated.
For example – guessing a combination to a lock is a proof to a challenge. It’s very hard to produce this since you will need to guess many different combinations – but once produced it’s easy to validate. Just enter the combination and see if the lock opens.
Another example could be solving a Rubik’s cube – again, very hard to produce, very easy to validate that the solution is correct.
In Bitcoin’s case, the challenge is finding a random number (nonce), that when you add it to your block of transactions and hash it (i.e. run some sort of mathematical formula on it), the result will be smaller than the target number set by the system.
Sounds confusing? It is. It all comes from the field of mathematics and the technicalities of the process aren’t really relevant for this post. What you need to remember is this:
It’s impossible to calculate this number, the only way to find it is through trial and error (i.e. guessing). So miners spend all day long guessing numbers until one of them finds the right one. Once that happens, the miner will present his solution to the network (i.e. his proof) and everyone will agree that his block will be the next block of transactions.
This mechanism makes sure that only someone who has invested enough computational power ( or “work”) in guessing the number will earn the right to update the ledger of transactions.
Proof of Work Criticism
There’s a lot of criticism about the PoW consensus algorithm. Mainly, that a lot of computing power and electricity are wasted just for the sake of generating random guesses.
Additionally, since miners group together in mining pools, this can create a problem of centralization where a specific pool has so much mining power it may conduct a 51% attack (i.e. gaining control over the blockchain).
Last, with PoW, by scaling your mining operation you’re exponentially more likely to mine the next block. This gives richer miners an unfair advantage.
Due to the above, people have started to suggest different consensus mechanisms that are less power consuming, such as Proof of Stake.
Proof of Work vs. Proof of Stake
One alternative suggested to the Proof of Work concept is Proof of Stake. Rather than requiring a miner to produce a proof to a challenge, the proof of stake system requires them to stake a certain amount of money. Let me explain…
Proof of Stake (PoS) doesn’t involve miners, it has validators instead. In order to become a validator, you need to stake a certain amount of coins. The more coins you stake, the higher your chances to be randomly chosen as the next validator.
If you are chosen as a validator and maliciously approve fraudulent transactions, your stake will be taken away. This gives validators an economic incentive to follow the rules.
PoS is considered an easier, cheaper and less-wasteful alternative to PoW. However, it has its share of disadvantages.
First, you can buy your way to a 51% attack. Granted, you’ll need around 51% of a coin’s market cap (several hundred billion in Bitcoin’s case), but it’s still possible. With PoW, this scenario is impossible to do on robust networks such as Bitcoin.
Second, if validators are chosen only by the amount of money they staked, we’re still giving an unfair advantage to rich people. More than that, we’re actually making them richer, as they will reap all of the network transaction fees.
If you want to create a decentralized network, you’ll need a consensus algorithm. While Proof of Work is the most popular one today, there are several alternatives.
For now, it seems that PoW has demonstrated its ability to safeguard the Bitcoin network from malicious actors, as no one has ever managed to conduct a 51% attack on the network or undo past transactions.
On the downside, the Bitcoin network consumes enormous amounts of power. Some would say this is a necessary trade-off.
What’s your take on Proof of Work? Do you think it’s worth it? Have you heard of any other interesting consensus algorithms? Let me know in the comment section below.
I think I love it well legit it’s great good at the moment I love it
I’m sorry, but I only see that PoS is absolutely a gamble, there is no work (effort) required other than stumping up cash and then waiting to be ‘randomly’ chosen to be a validator, worst still the more money you have to gamble the higher your chances (do you think it sounds like roulette wheel ?)… now it’s a scam closed to new entrants……. I’d say coins that go this way will self implode, distribution of these coins will concentrate on the rich, trading volumes will shrink, value will drop… i and many I know are no interested in putting my hard earned cash on the roulette wheel…. good luck to you stake holders ! Rich getting richer as usual
Is Proof-of-Stake more like gambling?
Not really, no. While there is a random element (“luck”) over the short term, over the long term that averages out (good luck in finding blocks quickly offsetting bad luck in finding them slowly) to produce a predictable result.
I say “predictable” but as price and the Difficulty of mining are in constant flux, the profits aren’t predictable. However, assuming a flat price and flat Difficulty, the results would be predictable over the long term.
It takes a keen business / investing mind to deal with the uncertainties in Bitcoin mining and make profit but it can be done. While there’s an element of risk, I wouldn’t call it gambling.
It’s only the ones that have mined enough coin thus far that have enough to stake or will stake as they’ve already mined it from nothing to play over the long enough term you’re referring to to even out the chance…. like a roulette wheel player sitting there for days to average the “luck”.
Seriously PoS is a terrible idea that skews the opportunity, unless your willing to gamble the money you’ve earned in your day job, it becomes a fund managers game …. Perhaps it’s what eth .org wants
Good read, Ofir!
Neither POS or POW are that good and the fact that most coins are experimenting with a mixed system should tell us that you can’t rely on just one of them. Each has its own advantages and disadvantages, but together they can have a positive impact for any coin, including Bitcoin. Just my 2 cents.
Ofir, how do you create these videos? Is there a special software or is it done in house?
I use an online software called “PowToon”.