Investor guide. Does this “cool project” truly need blockchain?
I’ve described the reasons behind the blockchain hype, its consequences, and strategies on how to actually successfully implement this technology in a previous post. I receive requests to implement blockchain projects every day. However, quite often I feel that blockchain is not needed at all. There are other types of architectures available and Blockchain — with native coin and very desired ICO :) — is only one of them.
Blockchain, defined broadly, is a mechanism for reaching consensus regarding the state of a shared database between multiple parties who don’t trust each other. But, it is needed only when it manages a scarce asset (something with zero-sum property — if you have it, nobody else can have it). Paul Sztorc did a very good overview of this concept here. I’ve made a try to enhance and extend his model in this post. So here is “The Big Four” of scarce asset (but maybe there are more!):
- value — money, shares, bitcoins, contracts, land title, etc
- identity — naming, PKI
- status in a hierarchy
- objective history of facts — provenance, voting
It is not relevant for the purposes of this discussion whether permissioned or permissionless (as well as public or private) blockchain is used. Also, consensus type is not important as well. These things are dependent on the environment within which the system operates. For example, if a project deals with a fully regulated asset, miners (below I will use word “validators”) have to be licensed. I have a model that describes these criteria and answers the question of when a project needs native coin and which consensus/incentive/punishment scheme is applicable, but that will be presented in the next post.
When project doesn’t need blockchain at all
On the other side of the spectrum lies the open network model of handling information. The open network model consists of many information creators and consumers (could be buyers and sellers) that are not related to each other. Blockchain limits the ways in which the users interact, i.e., they have to follow certain predefined rules. Users have to wait for confirmation from all the validators. So, blockchain is not a p2p network in its full meaning. One example of open network is the cloud computing market — there are multiple providers of such a service, they compete for the customer, and they don’t need a blockchain to record events or select providers (although it would be convenient to have the same APIs in order to be able to switch between them on the fly).
Examples of problems that don’t need blockchain directly:
- cloud storage market
- micro jobs market
- healthcare records management
- media content management
- internet of things
- web-of-trust (different from PKI!)
Many will not agree with this, but the criteria is the same — if you believe that IoT needs blockchain, ask yourself “For what reason does it need blockchain?” The answer will likely be “for identity and payments”. So, the result will be that an efficient identity and payment solution is built, and the IoT uses it. I will provide more examples below.
Fifty shades of grey
The community also came to a conclusion that different blockchains need to interconnect and work as a heterogeneous network. Many platforms were recently announced— Sidechains, Infra, Hyperledger, Interledger (as a protocol), Ethereum (in the future when sharding is implemented). Multi-blockchain systems are more scalable and usually have higher resistance to attacks (because each chain is a kind of independent). I would call them a Network of marketplaces.
While there are still plenty of questions regarding the architecture of a multi-blockchain system, it’s clear that there is no one size fits all solution. I will describe different schemes and their applications in the other posts.
The only criterion I could come up with to differentiate between types of architecture is:
Level of scarcity of a key asset that needs to be managed
Clear definition of a business problem will help to identify key asset and its level of scarcity. I tried to provide examples of corresponding 4 assets for Network of markeplaces and Open network.
Some comments: entities that are managed by Open network are not scarce at all, but things like Reputation or IOU (i.e. debt) lie in between, they are valuable in a limited environment. E.g. reputation usually is not transistive and doesn’t scale.
Lets see which questions help to understand which type of architecture applies to each business case.
Analysis of “blockchain” idea
If you analyse a blockchain startup, first ask yourself: What is the key asset? Why should this network exist?
Bitcoin — manages accounts in bitcoin
Namecoin — manages names within namespace
Ethereum — manages state of contracts
Steem — manages shares of Steem DAO
Ripple — manages state of trustlines
Factom — manages history of events
Everledger — manages history of events with diamonds
DDoScoin — manages history of actions
Storj — manages reputation (?)
Bitmessage — manages history of actions (bingo! it doesn’t have a blockchain)
The next set of questions will be — Between whom is consensus reached? How many participants should be involved in the validation process? I.e., can a particular validator verify that an action represented by a transaction indeed happened? What are the incentives to participate in a validation?
There are some cryptocurrencies (I won’t mention names) where price/emission of the coin is tied to amount of users. But how can validators potentially verify that real users join the system?
It is fully related to other proof-of-whatever coins where nobody except people who control the network can verify consensus. Validators cannot verify anything except math (digital signatures, state of accounts and data feeds) in their local copy of blockchain.
- Ripple should be a network of marketplaces.
- DDoS coin should be just an open network.
- Storj might have a blockchain where only reputation is recorded, but not a coin.
- Everledger is weak since there is no such thing as a digital right to own a diamond (or digital registry of all diamonds). One is still be able to trade diamonds and not report this fact — the price of a diamond will likely not be affected now.
- Other projects should probably not invent their own coin (rationale and exceptions will be provided in the next post) and only manage key assets in their blockchain.
- Steem is an interesting case, because they are trying to integrate monetary policy (there are 3 types of coins representing loan, equity, payment method) into the system. Native coin (i.e. national currency) is needed to execute monetary policy. I am not touching their initial coin distribution model though.
The reason why these blockchains manage more than one thing (key asset + own coin):
- absence of ideal payment mechanism
2. desire of founders to earn money :)
Just 3 steps towards understanding whether blockchain idea is worth your attention:
- Define key asset that needs to be managed
- Estimate level of scarcity of the asset
- Think about consensus process from business point of view
I usually feel like I am saving inverstors a lot of money when I talk people out of implementing blockchain. Hopefully this post will help others to raise good questions and make industry healthier.