..and that won’t work for long.
One of the great curiosities of Nakamotoan cryptocurrencies is that the key innovation in the protocol is the use of “proof of work” to implement a truly decentralized timestamp . At the core of this innovation there is a scratch off lottery, in which computers spin and spin, looking for a winning number. This computation is deliberately designed to be inefficient, so that it cannot be cheated or repeated. In fact, there is a “knob” that resets the difficulty to keep it inefficient in the face of technical improvements.
For me, this feature is just plain weird. My whole career–in fact, everybody’s career–has been about making software go faster. Bitcoin not only doesn’t want to go faster, it keeps adjusting the parameters to prevent software from going faster. This is so backwards and so wrong to conventional software engineers.
The underlying reason for this approach is to force real world costs into the protocol, in order to make the system “fair”. There is no back door or magic key for privileged users to game the system. Only real (computing) work counts.
As a side-effect, these costs create a form of “value” for Bitcoin, which logically must be worth at least as much as the cost of the computing work needed to obtain them. This is a sort of computational labor theory of value, which is no doubt amusing to twenty first century Marxists.
Unfortunately, the “work” that is used to mine and handle Bitcoin is a crude, brute force algorithm. It is simple and effective, but it sucks down computing cycles like mad, which use up large amounts of electricity.
Peter Fairley writes in IEEE Spectrum about “The Ridiculous Amount of Energy It Takes to Run Bitcoin” . In all, the Bitcoin network does 5 quintillion (5,000,000,000,000,000,000) 256-bit cryptographic hashes every second which he estimates consumes about 500MW of power. In addition, there are other cryptocurrencies and blockchain networks (including multiple versions of Bitcoin itself), with substantial, if lesser, power consumption.
This is quite a bit of power, something along the lines of a small city. Of course, it’s only a small slice of the power consumed by the whole Internet, not to mention the rest of modern life. But the engineer in me hates to see so much power burned off for so little meaningful work.
Fairley argues that a bigger problem is that if Bitcoin or some form of Nakamotoan blockchain succeeds and grows to be come truly ubiquitous, then the power consumption is likely to grow to the point that it is unsustainable. Even if we are OK with expending cycles for this purpose, at some point there will not be enough power to run and cool all the computers.
Predicting the future is difficult, of course. Computers in general are becoming more efficient, so growth in cryptocurrency networks will not lead to a linear growth in their power use. Nevertheless, it seems likely that the crude proof of work algorithm designed by Nakamoto will be difficult to sustain over the long haul.
As Farley discusses, there are alternative methods to achieve the same goal. Many alternatives, in fact.
For one, there is substantial interest in various “proprietary” blockchains, which may work the same way as Bitcoin, but do not rely on the open Internet. These networks trade off the “trustless” and “decentralized” nature of Nakamotoan style protocol in various ways, gaining much more efficient performance as well as other potential benefits, such as legally documented authentication
There are also alternative “math problems” that may be used instead of Nakamoto’s brute force hashing algorithm (e.g., Proof of Stake, or Algorand). It is also possible to utilize special purpose hardware, or even Quantum Computing.
In short, there are alternative technologies that would make a cryptocurrency far more scalable. If Bitcoin were normal software, there would be a strong case for reengineering it.
But Bitcoin isn’t “normal”. Not even close to normal.
Another cunning innovation from Nakamoto is its “decentralized” governance model. Changes to the code are published and users vote on them by adopting or ignoring them. There is no central planning, or any planning at all. Furthermore, changes that are not backward compatible essentially create a “new currency”, which may or may not eliminate the “old” code. These fork events can and do create parallel, competing versions of a cryptocurrency.
The point of Bitcoin’s decentralized decision making is to protect against “the man”. At the core of Nakamotoan ideology is the desire to make sure that no government or corporate cabal can fiddle with the currency, block access, or rewrite history. Changes require “consensus”, and “everyone” has a vote.
Unfortunately, this design also protects from centralized engineering. Technological progress requires decisions, and sometimes the decisions are complicated. Furthermore, good engineering is proactive, not reactive: it is a bad idea to wait until a problem is catastrophic or evident to everyone. Furthermore, rational engineering cannot always make everyone happy.
This is a formula for disaster. Ethereum has not only split into two currencies, one of the forks actually rewrote history. Bitcoin itself has been stuck in a rut, unable to deal with the most basic engineering problem (data structures), and heading for a catastrophic split into multiple versions. For that matter, dozens of other cryptocurrencies have floated, competing with Bitcoin (and sucking down yet more power).
If recent history is a guide, no improvement to Bitcoin is likely to be accepted by the current Bitcoin network. However, it is possible to boot up a technology that successfully competes with Bitcoin (as, say, Ethereum has done), and which might one day overshadow it. But Bitcoin probably cannot change.
At some point, Bitcoin qua Bitcoin will surely crash. Perhaps it will be replaced by other cryptocurrencies. Perhaps politics will keep it marginalized. For example, access to vast amounts of electricity is clearly a potential choke point for such a profligate algorithm. Or perhaps technical changes will break it. For example, Quantum Computing will eventually be able to both crack the encryption and likely will also be able to overwhelm the protocol with replay and other attacks. At that point, the blockchain will be corrupted and Bitcoins will have little value.
One of “Bob’s Rules” is that “All software becomes obsolete, sometimes much sooner than you expect”.
The problem is, Bitcoin is supposed to not be software, it is supposed to be money. The ramifications of Bitcoin’s inevitable crash are staggering.
- Peter Fairley, The Ridiculous Amount of Energy It Takes to Run Bitcoin. IEEE Spectrum, 54 (10):36-59, October 2017. https://spectrum.ieee.org/energy/policy/the-ridiculous-amount-of-energy-it-takes-to-run-bitcoin
- Satoshi Nakamoto, Bitcoin: A Peer-to-Peer Electronic Cash System. 2009. http://bitcoin.org/bitcoin.pdf