Systems will never scale if you require global consensus for local actions by independent agents. For example, I should not have to know where every dollar in the economy is when I want to buy something from you.
Excerpted from Arthur Brock:
“Stop the Nonsensus! (Nonsense Consensus): Systems will never scale if you require global consensus for local actions by independent agents. For example, I should not have to know where every dollar in the economy is when I want to buy something from you. That adds an overhead of ridiculous complexity for something which needs to follow the principle of pushing intelligence and agency to the edges rather than center. Likewise, an atom should be able to bond with another atom (see cartoon) without accounting for status every electron in the universe. However, Bitcoin and blockchains are built around authorized tokens embedded in every transaction/record, which embeds unnecessary complexity and limitations for scalability into every interaction. Tokens are not what makes a decentralized system work, cryptographic signatures and self-validating data structures are.
* Intrinsic Data Integrity:
For a long time, data integrity has been conflated with the hosting, control, and access to the device on which the data is stored. So banks have big firewalls to keep you from hacking in and changing your account balance. But today we have self-validating data structures like hash-chains and Merkle-trees which leave evidence of tampering by breaking structural integrity, cryptographic hash, or counterparty signatures when the data is altered. This makes it possible to distribute the storage and management of data and ensure that the people holding it can’t tamper with it. In other words, you could be an authority to show your own account balance, yet not be able to tamper with your account history. When implemented properly, this is the key to enabling massive scales of storage and throughput by enabling auditable data to be stored anywhere/everywhere instead of requiring agreement on single shared ledger.
* Distributed Process not Consensus:
Let’s learn a bit from tracking how scalable systems in nature and real world get things done. Speakers of a language each carry the means to generate sentences as needed, we don’t store every sentence spoken in some global ledger. Cells each carry a copy of their instruction set (DNA), rather than a record of the state and type of every cell. What you need to distribute in a system of collective intelligence is the ability to distribute reliable processing according to shared agreements. Consensus then becomes something used for to ensure the integrity of the processing, rather than the medium upon which processing is executed. This approach, lets you confirm that your copy of the process is valid, so you can rely on it to work according to the agreed upon rules and proceed authoritatively without having to wait for the rest of the network to validate, verify and update itself with your state.
* Agents not Coins:
Instead of starting with cryptographic coins or tokens as the fundamental thing that exists, start by having the agents/people/organizations (or their signatures and account IDs) be the primary things that exist. When each person has a copy of the process needed to participate, and their records are stored with intrinsic data integrity, that enable two people to perform a transaction without requiring approval or consensus of anyone else. My process audits your transaction chain to make sure you’re in a valid state, yours audits my chain, and either rejects the transaction if it puts someone in an invalid state according to the coded agreements. I know, you have a lot of questions about to make sure this can happen reliably, but I’ll drill into that later.
* Fractal not Global:
You would think that the existence of the web would have taught us already that we can have shared access to pretty reliable, referenceable, information without us all having identical copies of it. Starting by creating a global ledger where each copy has to be in the same state is a totally different problem than having a fractal process for creating and organizing data which can be referenced by anyone wherever that data lives. It can still provide globally accessible agreement about data, but that agreement is constructed from fractally assembled reliable parts instead of requiring each part to reach global (or 51%) agreement to commit each element of data. One of the beautiful outcomes from this is such a massive reduction in the processing and storage requirements that it becomes feasible to run a full node on a mobile phone instead of requiring specialized mining hardware.”
For more, check out the Metacurrency project pages on Medium here.