Blockchain: an Alternative to Centralized System Architectures
Blockchain, blockchain, blockchain. Ever heard of it? No? Then you must probably live in a cave.
Blockchain is definitely the new buzzword, hyped by many, understood by a few. It is by no means wrong to argue that the majority of businesses are — at least — thinking about adopting a blockchain-based solution to simplify and improve the way they conduct their business.
Why is it so? Is it really a valid alternative to the common centralized architecture of current systems?
This article wishes to provide an introduction to the differences between centralized and decentralized systems.
In order to have a better understanding of what a blockchain is, it is necessary to take a step back and trying to understand what were the reasons that led such an innovation to be developed and why such a system should be preferred to the centralized model that is widely adopted nowadays.
I challenge you to mention an area of our world that is not currently governed by a centralized system.
Very much like Jeremy Bentham and his Panopticon, third parties are inherently present in our system, a necessary mechanism to ensure trust between two parties. The lacking trust between two individuals conducting business or whichever type of transaction is guaranteed by an intermediary, a third party, be it a bank or a government. Furthermore, the architecture of these systems is typically closed . These means that it is not possible to simply access or leave the network, but in order to do you, participants need to be identified. In a world divided by walls, businesses are very cautious to share or leak information that might compromise their competitive advantage. Each system is on its own, characterized by a closed framework and low — if any — interoperability with external systems. The result of which is often a problem of standardness and security, from which steams an unavoidable waste of resources that could be put to better use by cross-linking systems and connecting them, when possible.
The shortcomings of centralized systems can thus be summarized as such:
1) Lack of interoperability
3) Single point of failure
4) Harder to adapt to change / Not flexible
The digital paradigm has already influenced the architecture of businesses, pushing towards vertical and horizontal integration. Internet has done so by a great deal. The trends of digitalization and the slow realization that the world is not a zero-sum game are slowly leading to a new paradigm, in which decentralized solutions might play an important role.
Businesses are realizing there are new significant ways to improve the cost and efficiency of their architectures. In particular, a very costy practice is for each firm to maintain its own ledgers. This duplication can lead to inconsistencies and drives a need for costly matching in case of discrepancies or errors. Furthermore, a possible mismatch of entries between two firms might be a potential source of systemic risk, as the plurality of technology platforms upon which businesses rely drives complexity and creates operational risk. A huge sum of money is currently wasted on redundant systems that are still characterized by a single point of failure.
We’ve seen more than once what happens when these systems are violated, leaking sensible data and losing businesses portions of their fortunes. It’s also true that, until recently, this type of architecture was unavoidable as there wasn’t any effective alternative. Nonetheless, the consistent development of cryptographic techniques, perfectly exemplified by the development of “blockchains”, provides a new opportunity to securely share systems of record between more firms. This new paradigm wished to replace the current system with a decentralized alternative. As Satoshi Nakamoto himself mentioned in the whitepaper of Bitcoin, the main objective of the cryptocurrency was to create
“a system of digital currency that would be similar to cash but inherently decentralized”.
By recognizing the root problem of the current system was the trust to a third party required to make it work, he proposed an alternative solution.
ELEMENTS OF DECENTRALIZED SYSTEMS
Once established the ambitious objective of decentralized systems, what are the requirements for the system to work?
1. Peer-to-peer Architecture (P2P): in a P2P network, tasks are partitioned among peers, having an equal weight in the system. They share a portion of their computational power to the other participants, thus removing the need for a central authority, such as in the form of servers. Transactions are thus conducted directly between peers, without the need of a third party to enforce trust or compliance, as these elements are inherently contained in the code powering the blockchain. In such a network, communication is symmetric, because peers have the double function of being servers and clients.
2. Openness: in every moment, the system has to be open. It means that whoever wishes to do so can join or leave the system as it pleases. In addition, whoever possesses a certain currency has to be able to freely exchange it, without any limitation to access the network.
3. Censorship-resistant: it should not possible to limit or censor transactions and participants’ access to the network. Furthermore, it is not possible to roll-back a transaction or revert it once broadcasted.
4. Availability: the system needs to be always online, 24/7/365. It must always be possible to exchange goods and broadcast transactions.
5. Bonus #1 Store of Value: if possible, the currency used should not lose value but rather appreciate over time
6. Bonus #2 Privacy Aware: the system should preserve the privacy of participants. It should never be possible to track transactions and direct them to real world identities.
The two alternative architectures have to be adapt to a system processing transactions between different parties. By specifying and defining the features such a system has to possess, it is now possible to turn the attention to the challenges it needs to deal with. The different features of centralized and decentralized systems will be compared, in order to provide for a complete picture of their different ways of dealing with challenges.
To have a better understanding of how to structure such a system, it is useful to divide the problem in the following parts:
- Who is transacting;
2. Where to keep track of the balances of the participants;
3. What are we exchanging;
4. When did a transaction take place;
WHO IS TRANSACTING: How is it possible to identify participants in the network? How can we know who is transacting in the system?
In a centralized system, the identities of participants in the network are managed by a centralized server who takes care of credentials and passwords.
In a decentralized system, the identities of participants are not visible, but rather encrypted (using pseudonymous), identity verification is provided by a system of digital signatures.
2. WHERE: Where are transactions recorded?
In a centralized system, the storing of transactions take place on the server side, thus having a single point of failure. In case the server is hacked or subject to an attack, data is compromised.
On the other hand, a decentralized system is characterized by a distributed system of data sharing. Each node in the network possesses a copy of the data of the system and is thus able to access and control it. By doing so, the system doesn’t have a single point of failure and manages to gain resilience, the possibility of keep working as long as a single node is connected to the network.
3. WHAT: What are we transacting?
A centralized system uses a token created by the issuer. Let’s use the current monetary system as an example. We use currencies issued by central authorities: the simple fact that they’re issued by these central actors makes them worthy and makes people willing to accept them.
In a decentralized system, the lack of central entities issuing tokens can be considered a weakness. By lacking such guarantee, tokens might be deemed to be worthless. As a result, a decentralized system has to find a way to link the creation of digital token to the use of real-world resources. in the case of Bitcoin this is done through an algorithm called Proof of Work, where computers spend electricity to generate token. The value of the tokens is thus inherently linked to the consumption of electricity, necessary to mint new Bitcoins.
4. WHEN: How is it possible to know when a transaction took place?
Centralized systems use a top-down ordering system, coordinated by a central entity. Transactions are ordered, following precise ordering policies defined by the centralized actor.
In a decentralized system, transactions follow the order in which they are put in the blockchain. Each block contains a series of transactions, ordered depending on the time when they’ve been broadcasted to the network and often ranked by the amount of fees paid. In a system like Bitcoin, where the throughput is still relatively low in respect to what it is needed, priority can be gained by paying higher fees to be included in the blocks before others who paid less.
As it is possible to observe by this quick comparison, both systems have established mechanisms to deal with the challenges presented. Some of them might work better than others, depending on the context where they’re being applied.
The aim of this article is not to provide an opinion on which of the two architecture is better than the other, since none of them is. Both alternatives are valid, according to the contexts where they’ve been deployed.
What is important, instead, are the new possibilities opened with the development of decentralized and distributed systems, allowing businesses to choose the model which better fits their specific situation. While the development of a centralized system has always been the standard choice for firms, the technological advancements and developments we’ve been going through the last years allow them to have a choice between two different system architectures. This could lead to the blossoming of a great number of projects based on new designs and a cross-pollination of design mechanisms and components that could benefit the whole ecosystem.