On November 25, Ethereum founder Vitalik Buterin addressed a crowd at the conference Beyond Block Taipei, where he discussed many of the blockchain platform’s goals for the next three to five years and described some of the ways that he and his colleagues intend to achieve them.
He began his talk, entitled “Ethereum 2.0,” by noting that the term does not refer to a specific set of updates, but rather to ongoing efforts to improve the platform’s performance in areas including privacy and scalability.
“Blockchains are public ledgers,” he explained, a format which is advantageous in the sense that, “you have lots of nodes verifying data, but on the other hand, blockchains … have lots of nodes seeing data.” Developers have identified many avenues through which to resolve this paradox and ensure privacy, including “mixers,” “state channels,” and “some kind of higher-tech cryptographic alternatives.” The recent Byzantium hard fork, he reported, enhanced Ethereum’s ability to support cryptographic algorithms like “zero-knowledge proofs [and] ring signatures that don’t fully solve the privacy problem on their own, but give us some very powerful tools on top of which we can start building the solutions.” According to Buterin, the privacy issue is “3/4 of the way to being solved” on the base layer, while more work remains to be done on second layer blockchains.
Another Ethereum shortcoming that the young founder acknowledged was proof-of-work mining’s stunningly inefficient use of energy. In order to be “efficient, good human beings,” he said, “we want to have a consensus algorithm that wastes less electricity.” Put another way, the problem of consensus safety is one of “not throwing a billion dollars into a hole every year because of mining.”
However, he said that the most fundamental problem facing Ethereum’s developers is finding a way to make the platform simultaneously decentralized, secure, and scalable, and therefore spent the bulk of his speech discussing scalability. Solutions involving “interactive verification,” such as those pioneered by TrueBit or Golem, are “good for a few apps that require heavy computation, but not so much for heavy amounts of data.” Others, like Plasma, state channels, and Raiden, can provide significant scalability but “their throughput is limited by the main chain’s ability to handle deposits, the main chain’s ability to handle withdrawals, and the main chain’s ability to handle attacks,” among other challenges.
Buterin believes that sharding may contain the key to Ethereum’s goal of scaling to “thousands of transactions per second, on chain, without supernodes, masternodes, crazy-server-nodes, consortium chains, or any of that stuff, at least at the base layer,” all built atop “a network that runs on laptops.” Sharding necessitates the creation of many “universes,” and while protocols can exist to transfer data and resources between these digital spaces, the general principle is that “if you send a transaction in some universe [then] it only affects stuff in [that] universe.”
One method of implementing sharding that Buterin believes could be designed in the near term is a “validator manager contract” that resides and executes on the main blockchain, where it governs the proof-of-stake consensus system. Aspiring block-validators would submit the requisite amount of Ether to this contract to make themselves eligible to be randomly selected (by the same contract) to stake those tokens. If chosen, it would be up to them to verify the validity of the transactions on the current block, in essence minting it. The contract would select validators during every block cycle, both for the “main chain” as well as for each of the shards individually, with the contract acting “as a light client for each shard.” Similar to the way in which Ethereum uses “tiny block header[s]” to represent big blocks, transactions on shards (which would also get grouped into blocks) would be grouped into “collations” with corresponding “collation headers.” These collation headers would appear on the main chain, where the validator manager contract would keep track of them, allowing the actual transactions and collations themselves to remain off the base layer – a boon to scalability. Buterin describes this proposed system as “proof-of-stake as mediated by the validator manager contract, which sits on the main chain.”
As an Ethereum-based sharding scheme matures, the platform’s founder hopes to “add two-way convertibility of Ether, then eventually … reorganize the system so the shards would be in a more logical position in the main chain – basically, they would be uncles instead of transactions.” The next step after that would be to achieve “tight coupling,” whereby “everyone downloads clients that enforce [the case] that if a given blockchain contains a shard header which is invalid, then the blockchain as a whole becomes invalid.” If Ethereum can achieve this, then the “validity of layer two becomes the necessary condition for the validity of layer one.” As a result, “the entire sharding system would have the same uniform level of security, and it would all basically be governed by hard forks and not really any kind of ETH voting mechanism,” as would be necessary in the interim, before the integration of tight coupling.
Buterin predicted that other sharding developments would eventually follow, saying that an “Ethereum 3.0” would incorporate “starks” and “multilayer sharding” and strengthen “cross-shard communication.”