WHEN DOES A BLOCKCHAIN MAKE SENSE?
In general, using an (open or permissioned) blockchain only makes sense when multiple mutually mistrusting entities want to interact and change the state of a system, and are not willing to agree on an online trusted third party.
To ease the decision making process, there are several criterias to consider:
1. If no data needs to be stored, no database is required at all, i.e. a blockchain, as a form of database, is of no use.
2. Similarly, if only one writer exists, a blockchain does not provide additional guarantees and a regular database is better suited, because it provides better performance in terms of throughput and latency.
3. If a trusted third party (TTP) is available, there are two options:
First, if the TTP is always online, write operations can be delegated to it and it can function as verifier for state transitions.
Second, if the TTP is usually offline, it can function as a certificate authority in the setting of a permissioned blockchain, i.e. where all writers of the system are known.
If the writers all mutually trust each other, i.e. they assume that no participant is malicious, a database with shared write access is likely the best solution. If they do not trust each other, using a permissioned blockchain makes sense. Depending on whether public verifiability is required, anyone can be allowed to read the state (public permissioned blockchain) or the set of readers may also be restricted (private permissioned blockchain).
4 If the set of writers is not fixed and known to the participants, as is the case for many cryptocurrencies such as Bitcoin, a permissionless blockchain is a suitable solution.
Copyright 2022 — IT UMN