Have you already been confronted with a project proposal that involves blockchain? It’s currently hip to add blockchain to a proposal, it apparently instantly increases the value of any project. So how can you best approach this kind of project?

Although blockchain has been in the media for a while now, the understanding of what it is seems not yet to be widespread. This currently give blockchains the advance praise of being a silver bullet to various complex problems. The pattern goes: instead of having authorities, middlemen, redundancies or clerks a blockchain is put in place and things will be faster, cheaper, more secure and more reliable. And in some, maybe many cases, a solution involving blockchain can achieve these goals.

Now, as always, the use cases of the project should be properly analysed before jumping to the implementation. A blockchain cannot be the magic solution in the middle of the proposal. Instead you need to understand how and why blockchain is the right answer your problem at hand.

To be blunt: a blockchain is a special type of database. So, when you look at the proposal and substitute database for blockchain, then probably many interesting questions about the property of the database come to your mind. When the answers to those questions mean the database must have the properties of a blockchain, then the use of a blockchain is justified. For the sake of illustration throughout this blog post, let’s assume that we want to build a system, which can prove that specific documents have not been altered after a given date.

In general: which requirements on the database ask for a blockchain? The following questions help you to drill down on that:

  1. Do the use cases require a distributed database where the content is decided by consensus and is controlled by multiple or many entities – or can the requirements be fulfilled with a single centralized database? When a centralized database controlled by a single entity can achieve the goals of the project, then a “normal” database can fulfil your requirements. On the other hand, when the database and the control over it needs to be distributed over several entities, then a blockchain is probably the right technology for you. For our unaltered documents example, we can decide both ways: we can opt for a traditional approach with a third party responsible to confirm our claim – or we can opt for a technical evidence based on a blockchain without any authority being involved.

  2. Do the use cases require that the recordings in the database are permanent and are save against alterations (i.e. can the entities having write access to the database be trusted – or do we need to protect against alterations through technical measures)? When this is an important characteristic, then a blockchain might be well positioned to fulfil the needs. But be aware, that for example a blockchain running on a single server controlled by a single entity will not satisfy your need. Coming back to our example: when opting for a solution where we don’t need to involve a third party, then we truly want the records to be permanent and save against alterations. Otherwise we could alter the records ourselves and they would not be able to uphold the unaltered claim.

Which blockchain suits your project?
Switching again to your project, let’s assume it is best fulfilled by a blockchain. Is this it? You can throw “a blockchain” at it, problem solved? As you probably guess, it’s not that simple. It’s important to understand, that different forms of blockchains exist. They have different properties and the specifics of the problem, which your proposal wants to solve, needs to be matched with those properties. Here two basic considerations for blockchains:

  1. Which entities shall be in control of the databases and therefore can participate in the consensus process to validate write transactions to the database? When the answer is that the entities will be handpicked, then you are looking for a permissioned blockchain – instead when anyone can participate as a database host, then you are looking for a permissionless blockchain.

  2. Does the proposal require that reading from the database is open and transparent to the public? If yes, then you are looking for a so called public blockchain, where access is open to the public. Otherwise you are looking for a private blockchain.

For our unaltered documents example, it is interesting when we can easily prove our claim that a document was not altered to others. This is why we prefer a public blockchain. Permissioned vs. permissionless is not relevant for our example as long as the trust in the claim is not at risk.

Make or buy?
Finally, the always important question “Make or buy?”. Let’s say you now have figured out, that your project proposal is best fulfilled with a blockchain. You also have elaborated, which properties you are looking for in the blockchain to be used. Should you now setup a new blockchain – or can you hook into an existing blockchain? This needs to be looked at on a case by case basis. In the case of our unaltered documents example we are looking for a public blockchain. Bitcoin and Ethereum are public, permissionless blockchains we could use. Technically we would write additional data, in our case the hash of a document, to the blockchain while transferring Bitcoin/Ethereum currency. This approach is called using “colored coins”.

You are now in position to demystify a project involving blockchain. Blockchain is simply a technology and not a business model. This insight should help you to do things in the right order. Along with the old wisdom that “First the use cases need to be tied down, and afterwards the best technology can be selected.”