Blockchain
Blockchain
- A blockchain is a decentralized database.
- A blockchain is a worse database. It is slower, requires way more storage and compute, doesn't have customer support, etc. But has one dimension along which it is radically different. No single entity or small group of entities controls it.
- Blockchain solve the Byzantine Generals Problem: How do participants in a decentralized network communicate and coordinate with each other towards some action without relying on a trusted third-party?.
- Blockchains are "trustless". There are mechanisms in place by which all parties in the system can reach a consensus on what the canonical truth is.
- Power and trust is distributed (or shared) among the network's stakeholders (e.g. developers, miners, and consumers), rather than concentrated in a single individual or entity (e.g. banks, governments, and financial institutions).
- Blockchains put the code in charge.
- Blockchains allow permisionless innovation.
- Blockchains is useful when these conditions are met:
- The resource is scarce (limited).
- Fungible (there isn't a difference between two items. eg. storing files). All the coins are mutually interchangeable.
- The resource can be provided by a lot of people.
- Smart contracts can be defined as code that's replicated and executed on all the blockchain nodes.
- You can encode "human rights" in a smart contract and the contract will enforce them.
- Smart contracts allow permissionless composability. Composability allows anyone in a network to take existing programs and adapt or build on top of them, it unlocks completely new use cases that don't exist in our world.
- Blockchains could replace networks with markets.
- One of the main downsides of blockchains is that most humans are not good at protecting their passwords, credentials or private keys.
- Blockchains can be used to ensure the best output in prisoner dilemma style interactions. Write a smart contract that does X when everyone has added the money and no one will be able to betray.
- Blockchains solve distribution problems but they don't solve the problem of who will add the money to the ecosystem. That's a political one. Unless there are good incentives to move to blockchains.
- Once a system moves to a blockchain, it'll get its properties (e.g: transparency and verifiability).
- Open source has the failure mode of not enough incentives, cryptocurrency has the failure mode of excessive and overly concentrated incentives.
- Blockchain incentives can have large real world undesired consequences. E.g: Bitcoin incentivizes miners to use a lot of energy.