If you are navigating the tech world these days, chances are you’ve heard the term « blockchain » once or twice. Hell even if you are not interested in tech, you may have heard the phrase more than that: the buzz is raging. But what lies behind the buzz exactly? What is this blockchain everyone is so excited about?
First of all, let’s make something clear. Yes, the blockchain was originally created to support another buzz-inducing technology: the Bitcoin. You may have heard of Bitcoin as a virtual currency used by drug and weapons dealers on the dark corners of the internet. Well, it is much more than that, but that’s a story for another day. Because like a lot of interesting innovations, what’s even more interesting than the bitcoin is the technology that was invented to make it possible, and that is the blockchain.
Blockchain and Bitcoin
You see, one of the design principles of the bitcoin as a currency is that it had to be created and exchanged without the help of banks. After 2008 and the subprime crisis, some people started to question whether they could trust banks at all, and the bitcoin appeared at that moment. As a testament to the fact that banks were not as essential to an economic system as we originally thought.
And to demonstrate that, as a network, the bitcoin needed to have 3 characteristics:
- it needed to be digital, in order to be scalable to the same level as banks, not like your typical local exchange paper currency
- it needed to be decentralized so that it could not be controlled or brought down by any authority
- and it needed to be distributed so as to remain impossible to corrupt or tamper with just by acting on a minority of participants.
Distributed vs decentralized, what’s the difference?
The last 2 points are particularly important. Because « distributed » and « decentralized » are often used interchangeably when speaking of a network, but they don’t mean the same. « Distributed » means the information in the network is not stored in one place, but spread equally across the network. « Decentralized » means that one or a few members of the network cannot take control of the network. Now you can see how it’s very hard to get decentralization without distribution first, because if the information is stored in one place, then just kill this one place and you effectively kill the network. But having the information distributed is not enough to guarantee it’s decentralized.
As a matter of fact, that’s exactly where the beauty lies in the blockchain technology. Because reaching full decentralization on a digital network of any kind is really hard. It’s almost as if you always need a central point for something. On a bittorrent network, participating computers store the files, but you need a central point to keep track of which files can be downloaded from where. Kill that central point, and you kill the network (pardon the approximation). You could solve that problem by storing all the files on all the computers, but first that would be really inefficient, and second, what prevents one participant to start spreading a corrupted copy of a file? How do you know what is the truth without a central point of control?
No central point of control
And that’s where the blockchain is revolutionary. A currency, any currency, works by keeping track of a list of transactions, in order to make sure that nobody (well, almost nobody) can spend money they don’t have. In a traditional currency, this ledger of transactions is maintained by banks. That’s what we trust them for (and that’s why they are the only ones who can actually spend money they don’t have, but again, story for another day). In bitcoin, this ledger of transactions is distributed: every participant in the network gets a full copy of it. Which is not as inefficient as the bittorrent file example because transaction data is relatively small. But then how do you make sure no participant can rewrite the ledger in their favor, especially considering we are talking about money here? This is what we call consensus.
The notion of consensus
Consensus is particularly hard to reach in a network where each participant in the network, as well as each communication channel between participants themselves, can disappear or stop working properly. This is a problem known as the byzantine generals problem. It has been bugging the scientific and computer science community for decades. It had been solved before in localized systems like airplane networks and so on. But Bitcoin’s blockchain was the first scalable implementation of a solution to that problem on the Internet.
New solution, new possibilities
Which brings us to what is really interesting about the blockchain in and of itself. Now that we have managed to solve this really hard problem for something as sensitive as a currency, think of all the domains in your daily life that are primarily based on a similar registry.
Start with your citizen identity, that is maintained by your country civil registry. Think of the land you own, that is secured by your local cadastre and your notary. What about your votes in an election and what guarantees that you won’t cast several votes in any given election? Registry again.
And most of the time, this registry of events nowadays is centralized by some authority, which means:
- it’s not very accessible, you have all kinds of paper-based (or web-form-based) procedures to follow to change information in them
- it’s expensive to maintain and secure. Think of all the civil servants that are necessary to process those forms and check the data
- it’s susceptible to corruption, and mistakes, that can have dire consequences
What if we could make all those systems cheap, secured and corruption-free at the same time? Here is the promise of the blockchain. That’s why it has the potential to be a platform for a whole new generation of businesses and structures. And why we should all get interested in it at some level.
You may think, OK but those are all highly sensitive and serious applications. They are better handled by a public authority. And how about your reputation on Airbnb, or your reviews on Yelp? What happens when these get unreliable? Marriages, kids, ownership, democracy, even your professional experience. It’s amazing all the applications you can think of that are relying on a registry of events. And more often than not, that registry needs to be secured somehow.
Where we’re at
Now I grant it to you, it’s all very technical at this point. The blockchain technology today is at a stage similar to the one the internet was in the early nineties. It is a very geeky system with a lot of low-level mathematical, logical and computer concepts to figure out. But like the internet, it will get better, more sophisticated, more user-friendly. And the people we need to push it there are the computer geeks, the software developers of this world.
If you are a developer, that’s the power, and the responsibility that you have. So if you are interested in participating in what, you should see it now, is no less than a cultural and societal revolution, please stay tuned. If you are not a developer, then you probably know one. So hug and support him or her with everything you’ve got, because they are gonna lead you into what’s to come.
To be followed
Of course, this is just an appetizer. We haven’t talked about why the blockchain is so elegant technically. And we barely scratched the surface of all the potential applications for it. Oh, and we didn’t talk about all the limitations of the blockchain as it is today. And the cases where a blockchain might seem like a good option, when it’s not. But don’t worry: the blockchain will be one of the regular topics of this blog. So we’ll come back to it.
By the way, if you are interested in learning more about the blockchain as a development platform, not just as a basis to pretend to be the Wolf of Wall Street, feel free to follow ChainSkills, a community learning initiative we launched with Said Eloudrhiri.
PS: If you are interested in that topic, Said and I will be giving a talk for developers about “Why you should care about the blockchain?” in Devoxx Belgium.