A quick overview of the progress of the 7 major clients of Eth2.0
Editor's Note: This article comes fromUnitimes(ID:Uni-times)Editor's Note: This article comes from
, by Somer Esat, translated by Unitimes_Charles, published with permission.
In this article, the author will briefly introduce seven Ethereum 2.0 clients currently under active development, provide source information about each client, and include relevant links for readers to learn more about.
secondary title
Why are so many clients needed?
You may be wondering, why are there so many clients? Why not focus on building a great "super client" once and for all?
Well, there are many reasons why having multiple clients is a good thing. Here are the two reasons I think stand out the most:
Having multiple clients means that independent developers are in friendly competition to motivate each other with different solutions and features. Competition drives innovation.
Having multiple clients means robustness, providing more options when one client fails. For example, suppose we have only one "super client", what if there is a bug or vulnerability in this client? This may bring down the entire Eth2 network.
In the time leading up to the (beacon chain) release, I hope that you will step out of your comfort zone and try different clients. There are many trade-offs between these clients, you need to use it yourself to find which client is best for you...Ethereum operates in a multi-client mode, in order to obtain the benefits of this approach, we need users to run various different clients (thus having a healthy distribution of all types of clients across the network).
secondary title
7 major clients
Cortex (Nethermind)
Lighthouse (Sigma Prime)
Lodestar (ChainSafe Systems)
Nimbus (Status)
Prysm (Prysmatic Labs)
Teku (PegaSys)
Back to the topic, we began to understand the seven major clients of Ethereum. The clients are listed alphabetically by name as follows:
Trinity (Ethereum Foundation)
This article describes each client in terms of maturity, technology, functionality, and support.
All clients are under active development as the latest Ethereum 2.0 specification version (v0.12.1) was recently released and the specification may still be undergoing changes.
To the various client teams: Please correct me if there are any inaccuracies in this article.
01. Cortex (Nethermind)
secondary title
The open-source Cortex client is the only .NET-based Ethereum 2.0 client in development. Its development company, Nethermind, was founded in 2017 and is located in London, UK.
While there has been no new activity on Cortex’s Github repository since December, there is evidence that the team is working on Eth2.0 support in the Nethermind (Eth1 client) repository. It's not clear if this means that the Cortex client is being phased out in favor of the more fully featured Nethermind client, or that Nethermind will eventually become Cortex.
Product overview (based on Nethermind, not Cortex)
Technology: Microsoft .NET Core 3.0
Platform: Linux, MacOS, Windows
License: GNU Lesser General Public License
Repository: GitHub. 30 contributors (commits). The most recent commit is within days.
Testnet: The Altona testnet has not yet launched
document
The Eth1 Nethermind client has extensive documentation. I haven't been able to find any documentation on the Eth2 Cortex client. May be currently under development.
current status
current status
Not yet finalizing
worth noting
worth noting
Documentation:
website:https://nethermind.io/
Documentation:https://nethermind.readthedocs.io/en/latest/index.html
02. Lighthouse (Sigma Prime)
secondary title
Lighthouse is an open source client written in Rust by the Sigma Prime team. Development of the client started in 2018 and the company is based in Sydney, Australia.
Product overview
Technology: Rust
Platform: Linux, MacOS, Windows
License: Apache 2.0
Repository: GitHub. 57 contributors (commits). The most recent commit is within days.
Testnet: Altona (Genesis)
document
document
The Lighthouse team has done a great job of providing documentation for the project. Some documentation includes:
User Guide on Client Installation and Configuration
Active Discord community
Regularly updated developer blog
Contributor guide for contributing to this project
current status
current status
The team is focusing on implementing the v0.12.1 specification;
Participated in the launch of Altona, the latest multi-client testnet;
Validator private key management is being finalized;
An external security audit is being run;
Working on a scheme to protect validators from slashing.
worth noting
Related Links
Related Links
website:https://sigmaprime.io/
Twitter:https://twitter.com/sigp_io
Discord:https://discord.gg/cyAszAh
Documentation:https://lighthouse-book.sigmaprime.io/
Contributor Guidelines:https://lighthouse-book.sigmaprime.io/contributing.html
03. Lodestar (ChainSafe Systems)
secondary title
The Lodestar client is an open source client written in TypeScript by the ChainSafe Systems team. It was developed by a group of developers in Toronto, Canada. In addition to this client, the team has developed a number of utility packages and libraries that support Ethereum 2.0.
Product overview
Technology: TypeScript
Platform: Linux, MacOS, Windows
License: GNU Lesser General Public License v3.0
Repository: GitHub. 30 contributors (commits). The most recent commit is within days.
Testnet: The Altona testnet has not yet launched
document
document
The Loadestar team has open communication and can read minutes of their team's meetings. There is very little user guidance on installing the software (basically: clone, install dependencies, build, run), but the team plans to add more documentation.
Minimal user guide on client installation and configuration;
Active Discord community;
Contributor guidelines for contributing to this project.
current status
current status
The medium-term goal is to be able to reliably run a beacon node and validator client on a suitable testnet (Altona or later) and update the relevant documentation.
worth noting
website:
Related Links
website:https://chainsafe.io/
Twitter:https://twitter.com/chainsafeth
Discord:https://discord.gg/yjyvFRP
Documentation:https://chainsafe.github.io/lodestar/
Contributor Guidelines:https://chainsafe.github.io/lodestar/contributing/
04. Nimbus (Status)
secondary title
Nimbus is a research project and an open-source client implementation of Ethereum 2.0 aimed at execution on embedded systems and personal mobile devices, including older smartphones with constrained hardware resources.
The Status team already has extensive experience with mobile technology through their messaging product, Status. They applied their experience to building an Ethereum client that can run an archival node and associated Eth2 software on a personal mobile device.
Product overview
Technology: Nim
Platforms: Android, Linux, MacOS, Windows (experimental)
License: Apache License 2.0 or MIT
Repository: GitHub. 24 contributors. The most recent commit is within days.
Testnet: Altona (Genesis), Onyx
document
document
Provides a recently updated, concise but to-the-point documentation set covering most of the information needed to get the client up and running.
User guide on client installation and configuration;
Active Discord and Status chat communities;
Developer's guide for contributing to the project.
current status
Implemented the latest Eth2.0 specification version v0.12.1;
Participated in the launch of Altona, the latest multi-client testnet;
Performance improvements and security audits are underway.
worth noting
worth noting
Related Links
Related Links
website:https://nimbus.team/
Documentation:https://our.status.im/tag/nimbus/
Twitter:https://twitter.com/ethnimbus
Discord:https://t.co/CYjHgi6wFI?amp=1
Documentation:https://status-im.github.io/nim-beacon-chain/
05. Prysm (Prysmatic Labs)
secondary title
The Prysm client is a full-featured and well-documented open-source Ethereum 2.0 client developed by Prysmatic Labs (founded in January 2018).
Prysm is a fairly mature client with a very active development team. They do a great job of interacting with and supporting users of their software and testnets, most notably Topaz (deprecated) and Onyx.
Product overview
Technology: Go
Platform: Linux, MacOS, Windows
License: GNU General Public License 3.0
Repository: GitHub. 48 contributors (commits). The most recent commit is within days.
Testnet: Altona (Genesis), Onyx
document
Prysm's user, code, and issues documentation is exhaustive and well maintained. The Prysmatic Labs team also do a great job of keeping the blog updated, it's worth reading for anyone wanting to keep up with progress on the Prysm client.
current status
current status
The client has been updated to the latest v0.12.1 specification;
Participated in the launch of Altona, the latest multi-client testnet;
Recently conducted a security audit and the audit feedback is being addressed;
Validator account refactoring in progress.
worth noting
worth noting
Related Links
Related Links
website:https://prysmaticlabs.com/
Twitter:https://twitter.com/prylabs
Discord:https://discord.gg/KSA7rPr
Gitcoin:https://gitcoin.co/grants/24/prysm-by-prysmatic-labs
Documentation:https://docs.prylabs.network/docs/
Contributor Guidelines:https://github.com/prysmaticlabs/
06. Teku (PegaSys)
secondary title
Teku client is an enterprise-level Ethereum 2.0 open source client. This client is being built by PegaSys (a project incubated by ConsenSys).
Notably, ConsenSys Codefi’s newly announced institutional-grade staking pilot project is being built on Teku.
Product overview
Technology: Java
Platform: Linux, MacOS, Windows
License: Apache License 2.0
Repository: GitHub. 38 contributors (commits). The most recent commit is within days.
Testnet: Altona (launch period), Onyx
document
document
Provides a recently updated, concise but to-the-point documentation set covering most of the information needed to get the client up and running.
User guide on client installation and configuration;
Developer's guide for contributing to the project.
current status
Updated to the latest specification v.0.12.1;
Participated in the launch of Altona, the latest multi-client testnet;
Recently added support for exposing RocksDB metrics to Prometheus.
worth noting
worth noting
Related Links
Related Links
website:https://pegasys.tech/teku/
Twitter:https://twitter.com/PegaSysEng
Discord:https://discord.gg/7hPv2T6
Documentation:https://docs.teku.pegasys.tech/en/latest/
Contributor Guidelines:https://github.com/PegaSysEng/teku/blob/master/CONTRIBUTING.md
secondary title
07. Trinity (Ethereum Foundation)
Trinity is an open source Ethereum client written by the Python team of the Ethereum Foundation that supports Eth1.0 and Eth2.0. Its development started in early 2019.
Product overview
Technology: Python
Platform: Linux, MacOS, Windows (not supported)
License: MIT
Repository: GitHub. 75 contributors (commits). The most recent commit is within days.
Testnet: Altona has not yet launched
document
document
The team has provided a reasonably updated set of documentation, including a client quick-start guide and instructions for securing and running the software.
The developer of the client provides a "Cookbook" document that provides advice on how to use the client to do some useful and interesting things, such as accessing built-in performance analysis tools.
current status
Implemented Beacon Chain Specification v0.11.1, currently working on implementing v0.12.1;
website:
Related Links
website:https://trinity.ethereum.org/
GitHub:https://github.com/ethereum/trinity/tree/eth2/v0.12.1
Documentation:https://trinity-client.readthedocs.io/en/latest/
secondary titlehttps://trinity-client.readthedocs.io/en/latest/contributing.html
write at the end
write at the end
Now you know about these seven clients! Which one do you like? I suggest you try both if possible. Once those clients can all successfully target the same testnet (if not Altona, then the testnet that came out later), it will be easier for you to get things up and running.
I'm not sure how many clients need to be ready for the launch of the Ethereum 2.0 mainnet, but it is clear that some of them are progressing faster. How this will affect the launch time of Phase 0 remains to be seen.


