Myth #50: Blockchains will solve all our problems.
Myth: “Blockchain”, the nebulous technology powering Bitcoin and other cryptocurrencies, has wide-ranging applications to all areas of life. Because of its successful application to the realization of digital currencies, it is also perfectly suited for “decentralizing” a wide range of other applications and services, eliminating the need for intermediaries and trust.
Busted: If you are using “Blockchain” as a synonym for “digitization” or “something with computers and cryptography”, then there might be some truth to this myth for you! All caveats about applying technological solutions to complex human problems still apply, of course.
But what does “Blockchain” actually mean? In its narrowest sense, a blockchain is a way of organizing data, a so-called data structure. It’s a list of “things” grouped into “blocks”. Each new block is placed on top of the last one, and you are not allowed to change or remove old entries. The “placing on top” is secured using cryptography. Each block “points” to its predecessor, and by knowing the “correct last block”, we can check whether the data we have of all preceding blocks is in its original form. This is quite useful if you want to ensure that a log of events has not been tampered with. However, someone can easily construct a fake chain of blocks to hide modifications he made. So how do you decide which chain to trust?
Enter Bitcoin. Bitcoin (as well as some of the projects it inspired) attempts to solve a very specific problem: how can a group of anonymous and untrusted peers securely agree on the “correct” chain of blocks? This is very hard. For example, you cannot just vote, because generating fake votes is easy when everyone is anonymous. Roughly, Bitcoin attempts to solve its very hard problem using a “one vote per wasted unit of electrical energy” policy.
Chances are, you are not dealing exclusively with anonymous untrusted peers. So you could explicitly define a group of peers with voting rights, and still use blockchain-the-data-structure. You’ll get a form of distributed database, something that can be made very efficient if your peers can agree on a leader or “being able to call it Blockchain” is not a requirement.
But perhaps “Smart Contracts” will help us to decentralize everything? Unfortunately, they are only helpful for working with data that is already on a blockchain. Ensuring that the data was correct in the first place is still an outstanding and very hard problem. After all, the blockchain is just a chain of blocks—how should it know whether the sun is shining outside or the bananas I’m eating are really fair trade?
Truth: The ideas behind Bitcoin are interesting for groups of peers that want to collaboratively maintain an event log but can’t agree on a single entity to order the log entries. Outside of this narrow scope, blockchain-based systems usually perform worse (in terms of throughput, latency, cost) than existing and simpler approaches. As for trustlessness – a blockchain might help us to ensure that captured data has not been altered, but it cannot tell us whether the data was correct in the first place.
Source: Karl Wüst and Arthur Gervais, Do you need a Blockchain?, 1st Crypto Valley Conference on Blockchain Technology (2018), https://eprint.iacr.org/2017/375.pdf, http://doyouneedablockchain.com; Florian Tschorsch and Björn Scheuermann, Bitcoin and Beyond: A Technical Survey on Decentralized Digital Currencies, IEEE Communications Surveys & Tutorials 18 (2016) 3, https://eprint.iacr.org/2015/464.pdf.