Private Blockchains vs Distributed Databases (just an opinion)

Private Blockchains vs Distributed Databases (just an opinion)

I have come across the subject of private blockchains a lot lately. And it got me thinking... Why are we so insisted on going that way if we have distributed databases already...

Although it is very hard if not impossible to come up with a definition of private blockchains, let's try to get the notion clear. I will describe it as follows: Private Blochchains, or permissioned blockchains, are ecosystems where Distributed Ledger Technology (DLT) is used to manage and store data, and where the ledger itself is not public and/or access to the ecosystem is only possible after approval by some authority. DLT and Blockchain are not the same concepts, but are (sadly) used as if they are the same thing. In this article, lets stick to using "Blockchain".

Thus, unlike public blockchains where the ledger is publicly available and becoming a node in the network is always freely possible, the private blockchains are managed, and data might be (or might not be) publicly readable. Federated blockchains fall in the same category as private, at least for the sake of argument, since they make use of some kind of managed authority as well.

Blockchain embodies some concepts which in my view are the core concepts, the foundation it was build on. Decentralized Distributed Consensus. From a purist point of view, any implementation should incorporate the following principles:

  • Truth is by Trust and Consensus it is not in the hands of one one single authority, but is placed in the network as a whole.
  • Truth is decentralized in the sense that there is no single authority which defines what is true, or the truth. There is no central authority which defines or dictates it.
  • Truth is Transparent and therefore publicly viewable and verifiable at any point in time, anybody may view and verify the current state of "truth". Also, contracts and software is open-sourced so anyone can see what is programmed to take place.
  • Truth is immutable thus there is one single truth, at any point in time. There can never be more than one truth, at any point.
  • Truth is distributed over multiple nodes, having a self contained ledger but a shared view on the truth as a whole. Therefore it removes the single point of failure principle.

If we take a look at private blockchains, we can see a number of core violations of these principles. Specifically because there is no decentralization. Decentralization means a lack of a central authority. Even though in the network layer itself, the nodes might be decentralized, if the network itself is managed and governed by a single authority (even when this is a body of federated authority or a foundation or group), we are undermining the true value and power of blockchain. Transparency, decentralization and even immutability is at steak. Because with a single governing body, no one can guarantee how data will be handled now, in the past or in the future. So in essence, trust is at stake, because in the end we still trust a single authority to handle the data, which is exactly as if we would put all our data at the Googles and Facebooks we already have.

If the availability and granting of nodes is handled by a single authority, we still have a single point of failure. What if this authority stops to exist, is bought by another company, or starts making the wrong choices? What if this authority is hacked or exposed? You name anything which falls under the single pint of failure problem-space, and it still applies.

Private blockchains are still prone to the "Quis custodiet ipsos custodes?" (Juvenal, Satire VI, 100AD) which translates into "Who will guard the guards themselves?" or "Who watches the watchers?". Can we trust the authority which are self-proclaimed trustworthy? And if so, how is this different from trusting the monolith data driven companies we have nowadays?

In case of private blockchain, we only have the last bullet, Distributed, left over from the list of principles. And thus we can raise the question, if it is only about distribution, why not use distributed databases itself. Because with that technology too, trust lies in the hands of a single authority, and distribution is natively incorporated. It is much cheaper and much less hassle to use. It has been perfected for decades. It is super fast and cheap, and it does not have the hassle of dealing with other parties owning the nodes. It even provides all the administrator functionalities a single authority wants, but which is not part of blockchain by nature. The only difference from data perspective, is that data chunks are not chained, but the same chain can easily be formed querying a database.

Granted, distributed databases is old-school. It sounds boring, and maybe even a giant step back in time. It's not a buzzword or a hype. But lets just see it and call it the way it is...

Nothing old-school about current-gen in-memory datagrids with local sync and async replication across geographical regions. :) Backed by file/DB storage if you want (or not).

To view or add a comment, sign in

More articles by Xander Ladage

Others also viewed

Explore content categories