Hi everyone,Many of you recognize IOTA for its bold technological aims that have sparked lots of controversy in the DLT community. While supporters feel they are witnessing the birth of another technological revolution, others discard IOTAs lofty goals as hand-waving and vaporware.Here I want to bring some substance to this debate by explaining WHY IOTA claims to develop disruptive and groundbreaking DLT and how this claim is based on a mind-boggling technological decision: To give up on objective reality in the networkWhats the problem with blockchains?Blockchains are limited in their use and real-world adoption due to fundamental design characteristics, which cannot be fixed by fine-tuning some parameters – instead, to achieve a real breakthrough, the whole concept must be questioned.Problem 1: Blockchains will never be fully decentralized and will always rely on middle-menDatabases traditionally rely on permissioned leaders to decide which transactions (tx) will be booked into the ledger. Bitcoins novelty was to find a way determine a temporary leader between non-trusting parties – whoever solves the hash-puzzle first gets to decide the changes in the next block. Today we know various methods for finding leaders, most popular being proof-of-work (PoW) and proof-of-stake (PoS). However, although blockchain was a good step towards decentralization, participants of these networks will always rely on very small minorities of powerful figures to participate in the network: Either corporations (professional miners) or rich people (stakers).Another serious downside of leader-based DLTs is that in order to convince them to include someones tx, they must be paid with fees. A bidding contest for the limited space on the blockchain ensues, that gives rise to unpredictable and sometimes exploding prices. PoW additionally faces the problem of completely relying on an immense use of energy – a practice, which in times of climate-crisis is regarded by many as anachronistic (more discussion about that in THIS thread).PoS on the other hand suffers from very high risk of increasing centralization, because the richest stakers are continuously rewarded with ever more tokens – which creates a feedback-loop of power-accumulation for the already rich. Terrible scenarios arise when a powerful entity disguises itself as many, seemingly unrelated, network participants and uses its power to control the network. Participants would believe they are part of a decentralized network, while actually living in a hidden dictatorship.Problem 2: Blockchains can´t scaleThere are many use-cases in finance, digital identity, smart contracts, token-economy and data-economy which rely heavily on huge amounts of fast tx. This observation implies at least two requirements for the underlying DLT protocol:Being able to process very high tpsFees per tx must be both negligible and predictable or, much preferably, zero (feeless).The fact that real-world adaptation of DLTs is mostly stalling shows, that current protocols cannot yet offer solutions to these requirements. To tackle these problems, some blockchains try to scale and reduce fees by static sharding (for example splitting the main blockchain into 64 smaller blockchains, each with only 1/64 of security), while other focus more on 2nd layer solutions with similar trade-offs.Reality as a social construct – IOTAs leaderless consensusThe IOTA protocol was described as a “blockchain, but without blocks and without chain”. But how can a protocol without any truth-deciding leader protect itself against the most fundamental of all threads, the double-spend attempts?IOTA is a directed acyclic graph (DAG), in which tx don’t run linearly as a chain, but in parallel to each other. Without a leader, each node is equal part of the network and can attach its tx directly to the ledger state – no middle-man needed, no fees to be paid. For this, a node communicates its tx to its neighbouring nodes. These neighbours then forward this change further into the network. Using this gossiping-protocol, the issued tx ripples through the network, until every node has heard of it.https://ift.tt/3fdMkz2 1: Overview network-topology of blockchains vs DAGs. Source: https://ift.tt/3C0iTKr problem: Double-spend transcationsBased on this design an immediate problem arises: A node could issue a double-spend tx by telling different neighbouring nodes differing variants of this tx.For example: Node A tells node B that it issues tx1, which transfers tokens from address A to address B. Simultaneously Node A tells node C that it issues tx2, which transfers the same tokens to from address A to address C. Once Node B and Node C gossip, they quickly find out about the double-spend attempt. Tx1 and tx2 cannot be true at the same time. But how can both nodes come to an agreement about which tx came first? For now, both nodes live in objectively different realities, with no way to logically deduce who´s perception is right and who´s is wrong.https://ift.tt/3fcY0BW 2: Node A sends conflicting information to nodes B and C. Node B and C will agree, that a double-spend attempt exists, but cannot agree, which tx was first.The parallel-reality based ledger-stateInstead of halting the network until the conflict is resolved (for example by asking every single node in the network about their perception and decide democratically which tx was first. This approach would be slow as hell and would not scale), both nodes keep going with their parallel realities. They gossip their variant of the truth to the network and keep processing other tx as if nothing happened.Constructing reality via on-tangle voting (aka “Multiverse consensus”)How do societies decide how to solve a conflict, if they don’t want to rely on some authoritarian leader? They conduct a democratic vote! The problem is, in a permissionless network like IOTAs Tangle it is impossible to have a classical democratic decision (1 entity = 1 vote), since a malicious entity could simply flood the network with countless nodes to manipulate the vote.The secret sauce here lies in a node-reputation system called “Consensus Mana” (cMana). Nodes earn cMana by attaching value tx to the network. Every node in the network can verify another nodes cMana by checking its recent history of value tx processing.Nodes automatically vote which tx of a double-spend is “the right one”, simply by gossiping their version of reality to other nodes. The double-spend is resolved when 51% of the total cMana in the network approves one version of the double-spend.Example: A double-spend attempt propagates through the network via gossiping.https://ift.tt/3j6zmE7 3: A double-spend attempt propagates through the network. Circles represent nodes. Lines represent gossip between nodes. Colors and numbers represent which tx of the double-spend the node saw first.Over time a winner emerges: One of the conflicting tx amasses 51% of all cMana approval behind it. Note: It will not be decided which tx actually came first, but only which one was heard first by nodes holding 51% of cMana. The nodes construct the reality of the network collaboratively.What happens to the nodes, that voted for the losing transaction? Nodes will learn over time that the majority of cMana approves the other tx. Since these nodes are honest and only voted for the losing tx, because it was their objective reality that this tx came first (not because they wanted to cheat), they will now flip their opinion to align with the majority of cMana. The losing tx and all following tx of the same funds are dropped and the network pretends they never happened.https://ift.tt/378OSKc 4: More than 51% of cMana approves that tx2 was indeed the first tx of the double-spend attempt. All honest nodes that heard about tx1 first will now change their opinion to align with the opinion of the majority of cMana.https://ift.tt/3fhuv1U 5: The network agreed on a common reality. Tx1 is dropped and plays no role in the future.Leaderless consensus – true decentralization needs no middle-men and no feesThe IOTA Foundation developed a completely new consensus model that is truly decentralized: No mining- or staking-oligopols decide the fate of the network. Since every node writes its own tx into the Tangle, without any leaders or middle-men, the network runs feeless. Since not all nodes have to agree about the state of reality at all times, the network is fast and scalable (currently 1000+ tps on mainnet, <10s solidification time).Remaining problemsThese recent breakthroughs took years in research, analysis, trial and error on testnets and input from academia and industry and are not fully implemented in any testnet. Currently, the IOTA mainnet is fully centralized, with just one node (the coordinator) deciding over double-spend conflicts.However, the IOTA Foundation recently published the fully decentralized IOTA 2.0 DevNet to showcase their working solutions. The DevNet is not yet feature complete (some modules such as congestion control and dust protection are missing and the current features are still prone to changes). Mainnet decentralization (“Coordicide”) will not happen this year.
Submitted July 31, 2021 at 10:11PM
No comments:
Post a Comment