Parity CTO: Nearly half of the code specification for the initial phase of the Ethereum 2.0 upgrade

According to recent reports from foreign media, developers working on the next iteration of the Ethereum blockchain have developed some code designed to help client developers improve their testing before upgrading.


Image source: pixabay

Ethereum 2.0 is by far the largest upgrade on the Ethereum developer agenda, which is said to significantly increase the scalability and usability of blockchain networks. The current Ethereum blockchain network has a history of four years, with a market value of 17 billion US dollars, is the world's second most valuable blockchain network. The development of Ethereum version 2.0 (also known as Serenity) is still fast, and Fredik Harryson, chief technology officer (CTO) of client developer Parity, said the code specification for the initial phase of the upgrade. Already completed about half.

Therefore, although many aspects of the upgrade are still under study and are currently being finalized, the new code was released on April 23, and if approved and eventually implemented, will facilitate basic communication between nodes running Ethereum 2.0 software.

The agreement, called Hobbits, was developed in collaboration with blockchain performance testing company Whiteblock, Ethereum Venture Capital Studio ConsenSys, and Etheneum 2.0 implementation team Chainsafe and Yeeth.

Trenton Van Epps wrote in a blog introducing the technology:

"As Ethereum 2.0 clients get closer to the online test network, they will need a way to pass information back and forth between each client. This can be done on a set of links called wire protocols."

The wire protocol is at the heart of the way these distributed networks work, because the key information, the transaction history, is passed between nodes to form the blockchain itself.

Eitafang founder Vitalik Buterin explained in an interview with CoinDesk in February that the wire protocol essentially determines the rules for which messages to send over the network.

"For example, if two nodes communicate with each other and one of the nodes wants to synchronize to the blockchain or release a block, how do I say I want to hear about this block? How do you want to hear these transactions? Buterin told CoinDesk.

Ethereum 2.0 will actually utilize a wire protocol called "libp2p", developed and maintained by San Francisco-based startup Protocol Labs, which also supports projects such as Filecoin and IPFS. However, before the implementation helped implement all ethereum 2.0 clients, Hobbits was conceived as a way to establish cross-communication between clients that were not yet ready for libp2p.

Jonny Rhea, a protocol engineer at ConsenSys, who participated in the construction of Hobbits, explained to CoinDesk:

"We haven't finished libp2p yet, so we need to find a minimal connection protocol, a bit like testing the connection protocol, until we can put all the pieces together."


Buterin pointed out at the time that each blockchain has a wire protocol or "micro-language" to define how messages are transmitted and received over the network. Currently, for Bitcoin and Ethereum, their wire protocol uses so-called gossip networks.

As Buterin told CoinDesk:

"For Bitcoin and [Ethereum 1.0], they all use what we call the gossip network. Any broadcast content will eventually reach everyone's hands, but for [ethereum 2.0], we can't do this. Because its total amount of information is more than the amount of information downloaded by any single node."

Therefore, the new ethereum 2.0 wire protocol libp2p will have two main advantages. It will first use a new protocol design called "gossipsub" to prevent the network from being overwhelmed and blocked each time a node wants to send a message.

Rhea said:

"If I have a new block and I have contact with six colleagues, I will randomly send this block to my two or three colleagues. I spread this information. Then these nodes have peer nodes, they Messages will not be sent back to me, but they may choose another two peer nodes to send messages."

More generally, the second benefit of using the libp2p wire protocol is modularity.

"The advantage of libp2p is that it is modular," Rhea said. "Assume that you don't like… how a node finds another node on the Internet. This is replaceable. It can be swapped out."

According to Van Epps, there are currently only two libp2p implementations for the Ethereum client written in the programming languages ​​Go and Rust.

However, Van Epps pointed out that "the long road to implementing Ethereum 2.0 depends on the proper implementation of libp2p for each client language."

Therefore, before other programming languages ​​(such as Java, Javascript, and Swift reach completion) are implemented, Hobbits will act as "the minimum transport specification that supports basic message types and allows nodes to communicate with each other."

Rhea tells CoinDesk:

“There are a lot of (research and development) things we want to be able to test. We developed this basic wire protocol so that our team, Chainsafe and any other team without libp2p implementation (programming) language can build in the language they developed. One (test network) is basically still able to communicate."

How does the blockchain land in various industries? What are the specific applications? The 2019 Global Blockchain (Hangzhou) Summit Forum takes you into the commercial age to see how the blockchain can be attached to the real economy. Countdown to 10 days, now buy tickets minus 200, click to buy tickets