Share, , Google Plus, Pinterest,

Print

Posted in:

The Evolution Of Distributed Consensus

From Cryptocurrency To Distributed Markets

Marc Andreessen, an early Internet pioneer (cofounder of Netscape in the 1990s) and the co-founder of perhaps the premier tech VC fund in the world, sees three major waves of technology over the past 40 years: 1) personal computers in 1975, 2) the Internet in 1993, and 3) distributed ledger technology (DLT – gaining prominence in 2014).[1]  More than $1.1B of venture capital was invested in DLT-related startups by May of last year (2016). This is on par with investment made in the Internet in the mid 1990s.[2] This revolution is continuing, and can be viewed as having developed through four generations.

Generation 1: Cryptocurrency

The current interest in distributed consensus was initially created by the introduction of the Bitcoin cryptocurrency in 2009. Bitcoin is a cryptocurrency application that uses the blockchain distributed consensus algorithm to ensure trust among the currency users in an open network, a network in which the participants are possibly unknown and untrusted individually. One component of the Bitcoin application is a distributed ledger. The ledger was first used to record currency transactions between counterparties. For example, if Alice pays Bob 2 BTC (bitcoins), then that transaction is recorded in the distributed ledger. The distributed ledger provides an immutable public record of the transactions, and the order in which they occurred. Once the community agrees on the order, then the order can never practically be changed.

Generation 2: Ledger

The second generation of distributed consensus systems began in 2013. Developers quickly realized that arbitrary information can be stored in the distributed ledger, not just financial transactions related to the Bitcoin currency. As a result, 3rd-party applications began using the Bitcoin network to store information in the Bitcoin blockchain. The ledger was used in two primary ways:

First, the ledger was used to record ownership of assets using digital tokens. A digital token represents a claim for something against somebody else, and the underlying asset may be either physical or digital. The token is passed from one owner to another, and this information is stored in the blockchain. For example, one might use tokens to track the ownership of diamonds through the supply chain. Other application examples include recording land ownership, the right to use intellectual property like music and artwork, and the ownership of user identifiers (domain names in a distributed alternative to DNS).

Secondly, the ledger is used as a timestamping service to provide a permanent record of activity. In other words, the blockchain is used as an Activity Ledger. For example, counterparties might complete a transaction, and then store the details of the transaction on the blockchain. In the future, the counterparties can prove the details of the transaction (as they existed at the time of the transaction), and that all parties involved in the transaction agreed to the details at the time of the transaction. This concept can be applied to any type of information, such as digital images, newspaper headlines, identity information, etc.

Concurrently, the market recognized the need to eliminate the performance constraints inherent in the Bitcoin blockchain system. Bitcoin blockchain can only record 7 transactions per second. The security of the system depends on a technique known as Proof-of-Work which requires expensive computing resources to solve hard cryptographic puzzles. Developers recognized that if the trust requirements are relaxed (i.e., if the participants in the network are known and trusted), then it is possible to create versions of blockchain that don’t require Proof-of-Work, and therefore have better performance. This led to private, permissioned blockchain networks, in which all the participants are known and trusted. Eliminating the use of Proof-of-Work improved performance, but at the expense of security.

Generation 3: Contracts

Generations 1 and 2 concerned the development and bootstrapping of a global cryptocurrency and the use of a distributed ledger for asset transfer and as an activity register. Generation 3 (2015 – 2016) took it a step further. The combination of currency and assets gave rise to the need for complex contracts that govern the transfer of assets using the cryptocurrency. One technology startup, Ethereum, created a fork of the Bitcoin codebase and made two important changes. First, it extended the Bitcoin codebase with a scripting language that makes it possible to codify complex contracts that govern the transfer of money and assets. In other words, Ethereum made it possible to specify complex policy that dictates under what circumstances money and assets will change hands. The scripts used to encode the policy are called smart contracts. Second, Ethereum made it possible to execute a smart contract on each of the peers in the network, each peer determining the result of the script, and the community then voting on the result of the script to reach community consensus. In other words, Ethereum distributed the trust in the execution of the smart contracts.   Rather than trusting a single party to execute the script and report results, the community executes the script and comes to consensus on the results.

These were significant steps in the evolution of the technology. The Bitcoin network provides a distributed ledger. By contrast, the Ethereum network not only provides a distributed ledger (that can also be written to and read from by 3rd-party applications), but the network itself serves as a platform for distributed computation. The new network provides a proof of concept that it is possible to create an open, distributed virtual server that provides both distributed computing and distributed storage. However, this technology is based on blockchain, and therefore still has many of the same fundamental limitations as the Bitcoin network.

Generation 4: Markets

In June, 2016, Swirlds announced the development of the hashgraph, an alternative to blockchain for the development of distributed ledger technology.  The hashgraph eliminates blockchain’s need for Proof-of-Work, improves performance in terms of throughput and latency, and provides a set of properties that go beyond blockchain.  Specifically, hashgraph provides highly granular Consensus Timestamping and Proof of Receipt of events, both of which are important when being used as an activity register. More importantly, hashgraph provides Fairness of Ordering.  Fairness of ordering ensures that at no time can a single member of the community influence the order of transactions.  This set of properties makes it possible for the first time to build open, general-purpose, distributed applications with high performance (high throughput and low consensus latency). And in particular, the fairness property makes it possible to develop distributed applications in which members are competing to have their transactions recorded first.  Some examples include stock markets, games, auctions, contests, time-limited business transactions, and registration (patent office, domain name registrar, etc.). For example, using the hashgraph, it is possible to develop a global stock exchange that is fair in the matching of buyers and sellers, and is transparent in its governance and policy for managing who is allowed to participate.

Existing systems for distributed consensus may be sufficient for a cryptocurrency, or a shared ledger, or for executing smart contracts. But if an attacker can influence the consensus order of transactions, then these systems will not be able to handle the next generation of use cases. To be future-proofed for these new applications, it is important to look to the emerging generation of distributed consensus technologies. These new technologies, such as the hashgraph, offer the same benefits as previous generations of distributed systems, but also ensure fairness in the ordering of transactions, consensus timestamps, high performance (hundreds of thousands of transactions per second), and 100% certainty that consensus has been achieved on the transaction order within seconds.

[1] http://dealbook.nytimes.com/2014/01/21/why-bitcoin-matters/

[2] http://www.coindesk.com/events/consensus-2016/video/day1/ CoinDesk Research Presents: State of Blockchain