goerli / medalla

Ethereum 2.0 Multi-Client Testnets Schlesi, Witti, Altona, and the official, public Medalla network.
https://medalla.launchpad.ethereum.org
The Unlicense
217 stars 78 forks source link
configuration coordination eth2 ethereum pm testnet

:warning: for post-launch testnets, check: https://github.com/eth-clients/eth2-testnets


Ethereum 2.0 Multi-Client Testnets

discord gitter

This repository has become a collection of multiple active and inactive testnets. Please refer to the following specs for details:

Or read the generalized outline on how to launch your own testnet: LAUNCH.md

F.A.Q.

I'm wondering ...

Why do we need multi-client test-networks?

The first phase of Ethereum 2.0, the phase 0, is the beacon chain. For the first time, a variety of new clients will be working together on a brand new blockchain with a new, unique approach to networking and consensus.

Before such a mainnet can be launched, we need testnets that mimic mainnet conditions as good as possible. This requires us to have stable, long-term, and persistent testnets up and running that are supported by not only one client but multiple clients, ideally, all clients.

The Schlesi testnet was one of many steps in that direction. The Witti testnet was another. The Altona testnet is yet another. The Medalla testnet aims to be the final one prior to mainnet launch.

Is Medalla the official, public multi-client testnet?

Yes.

What's the difference between Altona and Onyx?

The Onyx Testnet is a single-client testnet launched by the Prysmatic Labs team to replace Topaz. It's entirely comprised of Prysm validators, other clients didn't have releases at genesis yet.

Altona, Witti, and Schlesi, on the other side, tried to have as many different clients right from the start. The Schlesi genesis contained 50% Lighthouse and 50% Prysm validators. The Witti genesis even featured three clients. Altona featured four clients. They are multi-client testnets.

What's the difference between Altona and Topaz?

The Topaz Testnet is a single-client testnet. Same reasoning as Onyx above.

What's the difference between Altona and Multinet?

The ETH 2.0 Multinet is a collection of startup scripts to simulate multi-client testnets with various parameters such as number of validators to run the network with. The multinet is based on a minimal ETH 2.0 specification.

Altona, however, is not a simulation. It's a real persistent end-user testnet based on a slightly modified mainnet configuration. Everyone should be able to add validators and beacon chain nodes.

What's the difference between Altona and Interop?

The ETH 2.0 Interop Lock-In was a physical meetup of seven client teams working towards interoperability in 2019. This was the first major step towards multi-client testnets, even though the focus of the lock-in was mainly on networking. Other aspects of interoperability were playing minor roles.

For Altona, all aspects are important, as they would be important for a potential mainnet candidate.

Why does Altona use the Mainnet configuration?

The ultimate goal of Altona should be proving that the clients are ready to support a potential beacon-chain mainnet. Therefore, it is time to template the testnet as close as possible to mainnet.

Why is there no docker file or startup script?

The focus of the testnet is no longer developer but end-user centric. Each user of the beacon chain should be able to manually complete any task, i.e., setting up a validator or synchronizing a beacon chain node. Scripts will be convenient in future to ease this process but for now we need to ensure that nodes, clients, and other tooling is ready to be used sufficiently to complete all tasks required by a beacon chain mainnet.

Additionally, not having a script that does the job for you, ensures that all node implementations and their according tooling are well documented across the different clients.

Is Altona an incentivized adversarial network?

No. The Altona testnet is not incentivized. The current goal is to ensure protocol compatibility across major ETH 2.0 client implementations. Participation is free and permissionless, everyone can create validator deposits at 0x16e82D77882A663454Ef92806b7DeCa1D394810f on the Goerli Ethereum testnet and start validating on Altona.

Why do you call it Medalla?

Medalla means "medal" and can be seen as a reference to the Olympic testnet that was used to prepare the ETH1 launch. It emphasizes the importance of the network at this stage towards the ETH2 launch. It can also be seen as a hint that Medalla validators will recieve a proof of attendance "medal" on the Ethereum network for participation.

Why did you call Altona Altona?

Altona is a subway station in the city of Hamburg, Germany. It was proposed on Reddit by u/krokodilmannchen.

Why did you call Witti Witti?

Witti (Wittenbergplatz) is a subway station in Berlin proposed by MP. It's the first testnet named by a subway station in Berlin that is not located in the district of Kreuzberg were many blockchain companies, including the ETH DEV, have their offices.

Why did you call Schlesi Schlesi?

Schlesi (Schlesisches Tor) is a subway station in Berlin with proximity to Goerli and ETH DEV offices.

What is the Goerli testnet?

Goerli is a cross-client proof-of-authority Ethereum 1.x testnet. It's well supported across all ETH 1.0 clients, tooling, and infrastructure, and will be used to test the ETH 2.0 transition through a deposit contract deployed to Goerli.

See also

In the news:

Resources:

Historical documentation:

Previous multi-client testnets:

Support

This project is supported by the:

Thanks :heart:

License

This is free and unencumbered software released into the public domain. For more information, please refer to unlicense.org