Since the introduction of the Bitcoin whitepaper in 2008, the distributed ledger space has evolved significantly. Competing blockchains, consensus algorithms, and incentive mechanisms have emerged in attempt to either replace Bitcoin or fulfill alternative use cases. As a result, it is important to clarify the philosophical and technical differences between the leading types of blockchains.
In general, the idea that there is “one true way” to be blockchaining is completely wrong headed, and both categories have their own advantages and disadvantages. - Vitalik Buterin
A public blockchain is one in which anyone in the world can read the ledger (view transactions), write to the ledger (send transactions), and participate in the consensus process (validate transactions). These public blockchains, or permissionless ledgers, are generally secured by cryptoeconomics, which ties together economic incentives and cryptographic verification. Public blockchains aim to fully decentralized the role of a traditionally central third party by providing an unrestricted ecosystem with increased security, privacy, and self-sovereignty. Examples of public blockchains include Bitcoin, Ethereum, Monero, Dash, and Litecoin.
Consortium / Federated Blockchain
A consortium blockchain allows a predetermined number of validators control the consensus process, and may restrict the right to read/write the ledger to only its network participants, making it a permissioned ledger. Generally, the smaller number of trusted validators allows for a more private and faster transaction experience. Consortium blockchains aim to maintain the control of a central third party, but provide transparency and verifiability to a select group of people through cryptographic proofs. Examples of federated blockchains include R3 (Banks), EWF (Energy), B3i (Insurance), and Corda.
A fully permissioned ledger, private blockchains keep the write permissions central to one organization. The read permissions may be made public or kept private to some extent. Applications of a public blockchain include internal database management, internal audits, and other situations where public auditability is not the primary goal. Examples of permissioned blockchains are MONAX and Multichain.
Although the design and implementations of different blockchains are a bit clearer when laid out, the motivation and advantages of each can be a bit more difficult to understand at first. For this, we can't say it much better than Vitalik Buterin did in his 2015 post, On Public and Private Blockchains:
"First, private blockchains. Compared to public blockchains, they have a number of advantages:
- The consortium or company running a private blockchain can easily, if desired, change the rules of a blockchain, revert transactions, modify balances, etc. In some cases, eg. national land registries, this functionality is necessary; there is no way a system would be allowed to exist where Dread Pirate Roberts can have legal ownership rights over a plainly visible piece of land, and so an attempt to create a government-uncontrollable land registry would in practice quickly devolve into one that is not recognized by the government itself. Of course, one can argue that one can do this on a public blockchain by giving the government a backdoor key to a contract; the counter-argument to that is that such an approach is essentially a Rube Goldbergian alternative to the more efficient route of having a private blockchain, although there is in turn a partial counter-argument to that that I will describe later.
- The validators are known, so any risk of a 51% attack arising from some miner collusion in China does not apply.
- Transactions are cheaper, since they only need to be verified by a few nodes that can be trusted to have very high processing power, and do not need to be verified by ten thousand laptops. This is a hugely important concern right now, as public blockchains tend to have transaction fees exceeding $0.01 per tx, but it is important to note that it may change in the long term with scalable blockchain technology that promises to bring public-blockchain costs down to within one or two orders of magnitude of an optimally efficient private blockchain system
- Nodes can be trusted to be very well-connected, and faults can quickly be fixed by manual intervention, allowing the use of consensus algorithms which offer finality after much shorter block times. Improvements in public blockchain technology, such as Ethereum 1.0's uncle concept and later proof of stake, can bring public blockchains much closer to the "instant confirmation" ideal (eg. offering total finality after 15 seconds, rather than 99.9999% finality after two hours as does Bitcoin), but even still private blockchains will always be faster and the latency difference will never disappear as unfortunately the speed of light does not increase by 2x every two years by Moore's law.
- If read permissions are restricted, private blockchains can provide a greater level of, well, privacy.
Given all of this, it may seem like private blockchains are unquestionably a better choice for institutions. However, even in an institutional context, public blockchains still have a lot of value, and in fact this value lies to a substantial degree in the philosophical virtues that advocates of public blockchains have been promoting all along, among the chief of which are freedom, neutrality and openness. The advantages of public blockchains generally fall into two major categories:
- Public blockchains provide a way to protect the users of an application from the developers, establishing that there are certain things that even the developers of an application have no authority to do. From a naive standpoint, it may be hard to understand why an application developer would want to voluntarily give up power and hamstring themselves. However, more advanced economic analysis provides two reasons why, in Thomas Schelling's words, weakness can be a strength. First, if you explicitly make it harder or impossible for yourself to do certain things, then others will be more likely to trust you and engage in interactions with you, as they are confident that those things are less likely to happen to them. Second, if you personally are being coerced or pressured by another entity, then saying "I have no power to do this even if I wanted to" is an important bargaining chip, as it discourages that entity from trying to compel you to do it. A major category of pressure or coercion that application developers are at risk of is that by governments, so "censorship resistance" ties strongly into this kind of argument.
- Public blockchains are open, and therefore are likely to be used by very many entities and gain some network effects. To give a particular example, consider the case of domain name escrow. Currently, if A wants to sell a domain to B, there is the standard counterparty risk problem that needs to be resolved: if A sends first, B may not send the money, and if B sends first then A might not send the domain. To solve this problem, we have centralized escrow intermediaries, but these charge fees of three to six percent. However, if we have a domain name system on a blockchain, and a currency on the same blockchain, then we can cut costs to near-zero with a smart contract: A can send the domain to a program which immediately sends it to the first person to send the program money, and the program is trusted because it runs on a public blockchain. Note that in order for this to work efficiently, two completely heterogeneous asset classes from completely different industries must be on the same database - not a situation which can easily happen with private ledgers. Another similar example in this category is land registries and title insurance, although it is important to note that another route to interoperability is to have a private chain that the public chain can verify, btcrelay-style, and perform transactions cross-chain."
As the space evolves, so do the blockchains in it. For example, once Casper is implemented, Ethereum will transition from a fully permissionless blockchain to one that requires at least 32 ether staked to participate in consensus.
- On Public and Private Blockchains, Vitalik Buterin
- Blockchains: What and Why, Gavin Wood
- Blockchains & Distributed Ledger Technologies, Blockchain Hub
- The Benefits of Blockchain for IT, Part 2: Cybersecurity, Capterra
If you'd like to continue the conversation, share some feedback, or just say hi, feel free to join the Cryptotips Community Discord here.