Telling time takes work
"Dear, dear! I shall be too late!"
It is often said that bitcoins are mined because thousands of computers work on solving very complex mathematical problems. Certain problems are to be solved, and if you compute the right answer, you “produce” a bitcoin. While this simplified view of bitcoin mining might be easier to convey, it does miss the point somewhat. Bitcoins aren’t produced or created, and the whole ordeal is not really about solving particular math problems. Also, the math isn’t particularly complex. What is complex is telling the time in a decentralized system.
As outlined in the whitepaper, the proof-of-work system (aka mining) is a way to implement a distributed timestamp server.
When I first learned how Bitcoin works I also thought that proof-of-work is inefficient and wasteful. After a while, I started to shift my perspective on Bitcoin’s energy consumption. It seems that proof-of-work is still widely misunderstood today, in the year 10 AB (after Bitcoin).
Since the problems to be solved in proof-of-work are made up, many people seem to believe that it is useless work. If the focus is purely on the computation, this is an understandable conclusion. But Bitcoin isn’t about computation. It is about independently agreeing on the order of things.
Proof-of-work is a system in which everyone can validate what happened and in what order it happened. This independent validation is what leads to consensus, an individual agreement by multiple parties about who owns what.
In a radically decentralized environment, we don’t have the luxury of absolute time. Any clock would introduce a trusted third party, a central point in the system which had to be relied upon and could be attacked. “Timing is the root problem,” as Grisha Trubetskoy points out. And Satoshi brilliantly solved this problem by implementing a decentralized clock via a proof-of-work blockchain. Everyone agrees beforehand that the chain with the most cumulative work is the source of truth. It is per definition what actually happened. This agreement is what is now known as Nakamoto consensus.
“The network timestamps transactions by hashing them into an ongoing chain which serves as proof of the sequence of events witnessed” Satoshi Nakamoto
Without a consistent way to tell the time, there is no consistent way to tell before from after. Reliable ordering is impossible. As mentioned above, Nakamoto consensus is Bitcoin’s way to consistently tell the time. The system’s incentive structure produces a probabilistic, decentralized clock, by utilizing both greed and self-interest of competing participants. The fact that this clock is imprecise is irrelevant because the order of events is eventually unambiguous and can be verified by anyone.
Thanks to proof-of-work, both the work and the validation of the work are radically decentralized. Everyone can join and leave at will, and everyone can validate everything at all times. Not only that, but everyone can validate the state of the system individually, without having to rely on anyone else for validation.
Understanding proof-of-work takes time. It is often counter-intuitive, and while the rules are simple, they lead to quite complex phenomena. For me, shifting my perspective on mining helped. Useful, not useless. Validation, not computation. Time, not blocks.
Bitcoin taught me that telling the time is tricky, especially if you are decentralized.
Through the Looking-Glass
Down the Rabbit Hole
- The Bitcoin whitepaper by Satoshi Nakamoto
- Blockchain Proof-of-Work Is a Decentralized Clock by Gregory Trubetskoy
- The Anatomy of Proof-of-Work by Hugo Nguyen
- PoW is efficient by Dan Held
- Mining, Controlled supply on the Bitcoin Wiki