I have worked in the blockchain space for many years now. The .com craziness of the late 90s has finally arrived for Blockchain. Large amounts of money have been directed towards every idea imaginable. Over the next few years, the good ideas will prove out. One of the valid considerations while determining whether a blockchain will work for your purpose is whether you want a public blockchain, a private blockchain, or something somewhere in between. If you hear the term Distributed Ledger Technology (DLT) you may be having this conversation with someone trying to distance themselves from the term blockchain. However, the blockchain is not good or bad, it is just a tool.
As someone who has spent time in the blockchain (a.k.a. DLT) space, I am partial to public, distributed blockchains. A blockchain visible to the entire world is going to be the most trustworthy. Anyone with enough information can audit that ledger. A public blockchain with the correct incentives means that you may not need to spend the time and money necessary to maintain the blockchain’s existence. A properly incentivized, distributed public blockchain can truly live ‘in the cloud’ instead of a single corporation’s cloud service data centers. There is no single point of failure or attack.
Every cloud service provider in the world could go out of business and your blockchain solution would still be available. Being public also allows the tokens that run the blockchain to be monetized, allowing real-world expenses to be managed by those incentives. These blockchains are generally maintained by entities interested in a blockchains existence instead of its uses. This means that a public blockchain will not be in your control. Not being in your control adds to the blockchain’s unbiased credibility.
A quick note: By trustworthy, I am referring to the ability to audit the data that is being put into that chain and the technology itself, not the trustworthiness of a specific blockchain project or group of developers. That is a subject for a different blog.
A private blockchain does overcome some of the privacy considerations of a public blockchain. If only entities with permission to access private data are allowed into the blockchain, you may not have to be as diligent about what you put into it. Depending on your implementation, you may still have a perpetual data issue. One of the common arguments against private blockchains is that they can’t be trusted because they are not publicly auditable. In other words, a blockchain only needs to be accessible by its stakeholders. For example, a private blockchain that banks use for settlement may have all of the participating banks and regulators, auditing firms, and other financial industry players that may need access, but I don’t need to access interbank settlement records. A blockchain that excludes me can be perfectly capable of leveraging all of the blockchain advantages without being public. This does mean that the cost of running the private blockchain will be shouldered by the blockchain participants. It also means the entities running it will have a vested interest in the usage and content of the blockchain and not just its existence. Your blockchain can also be ‘in the cloud.’ It will just be a smaller cloud. This does not have to be a problem, but be aware that these issues exist.
Somewhere In Between: Hybrid
You can use a hybrid scheme that keeps many benefits of private or public blockchains while avoiding some blockchain deficiencies. Sidechains are used in some digital currency projects to increase throughput. These side chains can hold private information that is not public or immutable, but the public, primary blockchain holds the immutable, auditable settlements.
Factom does something similar with data. The data that Factom secures using its public blockchain is never exposed outside of the systems allowed to see it, but the information needed to validate and audit those systems is publicly available. Factom personnel will occasionally say, “We may not know what the truth is, but we can tell if you are lying.” This refers to the partially public and partially permissioned nature of the systems they create.
Regardless of which blockchain format you may decide to use, be aware that with a public blockchain, the data you put into it may exist into perpetuity. No encryption is strong enough if a bad actor has forever to break it. Do not put personal, private or sensitive information into a public blockchain. You can add transparency and auditability without having to share private information. Your needs should dictate what you use instead of a philosophical argument about what a blockchain implementation should be. There is no single answer to whether you should use a public blockchain, a private blockchain, or something in between.