It is important to note that if we regard transaction privacy of a blockchain system, there might be two different categories to consider:
- transaction privacy: if a transaction visibility is public or private
- transaction permission: here we usually consider something on a higher abstraction level than simple transaction. As an example, something as cryptoasset. In this sense it makes sense to imagine systems where different transactions can be associated with different permissions.
Certainly, there is an additional dimension that can be considered: it is the publicity of the P2P nodes of the system.
The different combinations are shown on the following diagram:
1. Systems like Bitcoin or Ethereum are public and non-permissioned. Certainly, there is always a minimum default permission even at non-permissioned systems: only the owner of the private key can spend or transfer the asset.
2. We would expect from a voting system that is private and non-permissioned, meaning that everyone can participate but the voting itself is not visible directly on the blockchain. Cryptocurrencies like Dash or ZCash are developed in the similar direction as well.
3. A Land title system would have the properties of being permissioned and public.
4. Last but not least a typical banking application would have both the characteristics of being permissioned and private. Blockchain frameworks as Hyperledger Fabric are able to realize such an applications.