By Grant Hummer

Anyone who’s followed Ethereum for a while knows its development history is riddled with broken promises, missed deadlines, and spotty communication about its future plans. This has caused many to write Ethereum off as a failed experiment. Their pessimism is understandable. Ethereum today (ETH1) is slow; the entire network is throttled at 15 transactions per second (TPS), and doing anything complex at scale with those transactions is extremely costly. Visa, by contrast (a single, US-based payment processor), processes thousands of transactions per second.

Why is Ethereum so slow and expensive to use? The incredibly high value and (current) high cost of decentralization is the short answer. Decentralization is costly because like most blockchains today, every node (defined as a computer connected to the network, like a laptop running Ethereum software) on Ethereum has to run every piece of computation on the network to ensure all participants obey the rules. This costs real energy and resources. In terms of time costs, the nodes running Ethereum are spread around the world — after all, it’s a public network with myriad incentives for participants — and there are high communication latencies and differing computing capabilities among the different nodes. The network needs to maintain enough of a delay so that slower nodes are able to “keep up” and be able to contribute to the decentralized voting of the network. If the Ethereum network as it’s currently architected started to process too much data in too little time, then consumer hardware such as laptops or personal servers would be unable to keep pace, and the only functional nodes on the network would be large data centers. This would severely compromise Ethereum’s decentralization, since those data center nodes could easily form cartels and take over the network or exert censorious control over it. A number of crypto networks (such as EOS) are actually experiencing this problem at the time of this writing.

Maintaining a sufficient level of decentralization in a public blockchain is incredibly important. Without decentralization, there isn’t much of a point to using a blockchain, because a centralized blockchain can easily censor peoples’ transactions, and is much more inefficient to use than a regular distributed database. In case you’re new to blockchain, let’s recall that before the invention of this new form of decentralized governance by Satoshi Nakamoto in bitcoin, it was in practice impossible for any system to have trustless governance — where all participants exert some control over decisions, but none have all (or majority) control. Vitalik Buterin (the inventor of Ethereum) famously responded to an audience question on this tradeoff between decentralization and performance, stating that anyone can build a high TPS system by making it a “steaming pile of centralized garbage.”

What if it were possible to build a blockchain where every node didn’t have to process every other node’s transactions, where you could reduce communication costs by instead processing only a small subset of the entire network’s transactions?

Enter ETH2.

ETH2 is the next generation of Ethereum, and even calling it Ethereum is a bit of a misnomer — it’s an entirely different project, with a new zero-to-one paradigm for how blockchains can operate at scale. The goal of ETH2 is to improve the scalability, security, and programmability of Ethereum. Instead of 15 TPS on a single chain, ETH2 will process thousands to tens of thousands of transactions per second (or possibly more) without compromising on decentralization. In fact, ETH2 will introduce a more economically secure consensus mechanism called Proof-of-Stake (PoS), in contrast to the Proof-of-Work (PoW) system that’s currently used in bitcoin and ETH1. In a traditional PoW blockchain (like bitcoin), new bitcoins are minted and transactions are processed by miners, individuals and institutions who use expensive hardware to solve very difficult math puzzles. Miners provide security to the network in exchange for inflation and transaction fees. In a PoS blockchain (like ETH2), by contrast, new ether is minted and transactions are processed by validators, who provide security to the network by locking up their ether. In effect, the security provided by validators is bootstrapped by and contingent on the value of the network itself. If a validator misbehaves (e.g., by approving a malicious transaction), their ether can be slashed. This slashing mechanism gives validators a large incentive to follow the rules of the protocol.

A big reason for PoS’s superior security is the so-called ‘spawn camping’ attack that PoW systems are vulnerable to. If an adversary was able to accumulate enough mining hardware to attack bitcoin or another PoW chain, then bitcoin would be powerless to stop further attacks, as the network would continually restart/hard fork, only to be attacked again ad infinitum by the same mining hardware. Ethereum, by contrast, is far more resilient to spawn camping attacks — Ethereum could hard fork and slash the attacker’s stake. This would be akin to burning down an attacker’s bitcoin mining farm.

In addition, ETH2 will enable developers to create their own transaction processing methods called execution environments, so that they can use the rules of different blockchains within Ethereum if they want to. To massively oversimplify what an execution environment is, ETH2 will enable people to use Bitcoin’s rules for transacting, ZCash’s rules, ETH1’s rules, and many other conceivable rulesets, at a scale multiple orders of magnitude higher than is possible today, all while being secured by the same large, well-capitalized set of validators. ETH2 will achieve this with what are called shards: each shard in ETH2 will be akin to a blockchain with its own unique block producers and validators, but it will be closely connected with and able to talk to the other shards, thereby forming a large network of shard chains. Thus, instead of having to process every transaction in the entire network, a given validator on ETH2 will only need to process and verify the transactions of a single shard. This is the innovative technique that will enable people using consumer hardware to meaningfully participate in the ETH2 network.

It’s important to note that each shard in ETH2 will share the same security as every other shard. In order to break a single shard, you would have to break the entire system. This security model provides much better guarantees of safety than platforms like Cosmos, where every chain is responsible for its own security, resulting in a fragmented and easily attackable network. Thus, in order to compromise ETH2, an attacker would have to buy and stake billions of dollars worth of ETH (an amount that will grow much larger if ETH prices increase).

Here’s an image of what a traditional blockchain network looks like — it’s a single ‘chain’ of data blocks. Don’t worry about understanding the block header or transactions list, since this graphic is just for illustrative purposes:

And here’s an image of what ETH2 will look like, except instead of two shard chains there will be 64, all using the beacon chain to coordinate with each other. Again, don’t worry about the technical details:

ETH2 is being built by 9 different engineering teams, who are being funded by grants from the Ethereum Foundation and receiving support from the broader Ethereum community. The teams are building applications called clients — you can think of a client as being similar to a web browser, like Chrome or Firefox, except instead of accessing websites, it’s accessing and participating in the Ethereum network. Client diversity is a core principle in Ethereum — the premise being, if one or two clients break or have a bug in them, the entire network won’t go down. Each client is targeting a different niche use case, but they will all be able to fully participate in the network. For example, one client is being optimized for smartphones, while another is being built for use by enterprises. The engineering teams are building ETH2 off of a specification created by highly talented researchers (mostly computer science PhDs or the equivalent) in the Ethereum Foundation, ConsenSys, and the broader academic community. Much of the research takes place in an open source manner on a site called ethresear.ch, where anybody in the world with a valid technical idea, suggestion or criticism can post. It’s taken years of intensive iteration for the specification to reach its current state — there were times when the researchers thought they had created a sound design, but would then discover flaws which required rearchitecting parts of or even the whole system. It’s not an exaggeration to say that the ETH2 research team is the most experienced and talented protocol design group in the entire blockchain space.

Here’s a list of the teams building ETH2 (in no particular order):

30+ person company based in Toronto, Ontario, with 5 developers working on their ETH2 client

Grassroots developers who met each other at the Toronto Ethereum Developer Meetup

Building a client called Lodestar written in JavaScript

50-person team distributed around the world at ConsenSys, the largest company in the Ethereum ecosystem

Built an enterprise-friendly ETH1 client called Pantheon

Have a team of researchers that heavily work on the ETH2 specification

Building a Java-based client called Artemis, optimized for enterprise use

4-person team based in Russia

Building a Java Ethereum client

Not much information publicly available about them yet

Potentially merging with PegaSys/Artemis

60+ person company based in Berlin, with a large remote workforce (not all working on ETH2)

Received $5 million from the Ethereum Foundation to build an ETH2 client named Substrate Shasper

Parity is also the team behind the ambitious interoperability blockchain project Polkadot, which some consider a competitor to Ethereum

Built and maintained the second most popular client in ETH1, also called Parity

6-person team distributed around the US

Actively posting updates on their blog, which are a great way to learn about and follow ETH2 more broadly

Building a client called Prysm intended for a wide variety of mainstream usage, similar to Geth in ETH1

4-person team based in Sydney, Australia

Cybersecurity experts with very strong academic/software development backgrounds

Building a client called Lighthouse, suited for mainstream use cases

8-person team based all over Europe

Working on a light client called Nimbus, meant to be run using smartphones and other ‘light’ environments

4-person team contracted to work by the Ethereum Foundation

Building a lightweight client which will serve as a prototype for more advanced implementations