Introducing the Deposit Launch Pad for Eth2.0
UPDATE: The first phase of Ethereum 2.0 has arrived! Phase 0, as it’s called, will launch the beacon chain, which establishes and maintains the proof-of-stake consensus mechanism. If you want to run your own validator on Ethereum 2.0, follow step-by-step instructions using the official Ethereum Launchpad. Also, see our blog on the deposit contract address.
Like all great missions, launching the world computer of tomorrow requires a platform that guides, strengthens, and fuels its journey across the bounds of our digital space. Today, we are excited to announce the go-live of the Eth2 Launch Pad application, which marks the entry point for validators to commence their journey on the Eth2 chain. It’s time to get your testnet ETH ready!
Over the past few months, Codefi Activate and the Ethereum Foundation (EF) have been heads down to make it easier for users to stake and become a validator on Ethereum 2.0. The result of this effort is the Eth2 Launch Pad, an application designed to securely guide you through the process of generating your Eth2 key pairs and staking your 32ETH into the official deposit contract. The Launch Pad was designed for self-validators, that is, hobbyists who intend to run their own validator and are comfortable running commands in a terminal screen on their computer.
Initially, the Launch Pad will only be compatible with the Eth2 Medalla testnet, which is scheduled to go-live once the genesis threshold of 16,384 validators (524,288 ETH) is met. The testnet is designed to provide ample time to ensure the Beacon Chain functions without error. Following the testnet phase, the Eth2 Launch Pad will continue to act as an entry portal for validators to stake real ETH forthe Mainnet.
In this post, we will provide a brief overview of the collaboration, some fun facts about the application, as well as the needs and design goals that the Eth2 Launch Pad fulfills.
We look forward to providing the community with ongoing educational fuel and software tools to catalyze participation in this next chapter.
Joining Forces: A Background on the Collaboration
In 2019, we began digging into the Eth2 ecosystem to explore where Codefi Activate could add value to the roll out of Eth2 and fill existing communication gaps between the protocol builders, service providers and existing ETH holders with the approaching release of Phase 0. We have since focused our mission on developing educational resources and insights on Eth2 economics, as well as industry and validator research, the findings of which were recently released as the Eth2 staking ecosystem report.
Shortly after DevCon V we connected with Carl Beekhuizen, who was leading the deposit Command-Line-Interface (CLI) effort at the Ethereum Foundation (EF). Beyond the code, Carl has also focused on the user experience of ETH holders becoming validators for the first time. Given our existing Eth2 research efforts and our experience with launching networks, collaborating with the EF and Deep Work Studio was a congruent next step to ensuring the launch of Phase 0 was built in a way that prioritized user experience, but also articulated associated risks and educational information for users to feel comfortable setting up their own Eth2 validators.
The Eth2 Launch Pad was open-sourced during the Ethereal Summit on May 8th, allowing users to host the application locally. Since its initial release, it has been great to see immediate engagement and feedback from the community. We continue to encourage teams and users to provide feedback!
The Eth2 Launch Pad mascot is Leslie the Rhino, named after the American computer scientist Leslie Lamport.
The Eth2 spec repo currently has 72 direct contributors.
The Eth2 deposit contract for the testnet will simulate the requirement to reach a Genesis threshold of 524,288 ETH staked or 16,384 validators
Getting to Genesis: A Brief Summary of Phase 0
Ethereum 2.0 will be released in phases, starting in 2020 with Phase 0. Phase 0 will launch the beacon chain, which is the component of the Ethereum 2.0 blockchain that implements the Proof of Stake consensus mechanism. The beacon chain will manage the registry of validators, who will begin attesting and proposing blocks.
In order for the beacon chain to launch its genesis block on mainnet, at least 524,288 ETH must be staked on the network, divided among a minimum of 16,384 validators to ensure sufficient security and decentralization. Reaching genesis will be simulated on the live Medalla testnet.
Each validator instance will require a deposit of 32 ETH to be added to the activation queue and begin attesting and proposing blocks on the beacon chain. Until withdrawals are enabled (at least after Phase 0), depositing ETH in the deposit contract is a one-way, non-reversible process.
What needs does the Eth2 Launch Pad fulfill?
Validators losing ETH = Eth2 losing validators
Simply put, if validators lose their ETH, Eth2 will lose validators. The process of depositing your ETH into the Eth2 deposit contract could result in multiple possible errors or attack vectors. These risks include losing your funds due to sending them to the wrong deposit contract address, falling prey to phishing attacks or someone stealing your private key and mnemonic phrase if generated and stored in an insecure manner. No one wants unhappy validators with lost or stolen funds!
To mitigate these risks, the Eth2 Launch Pad was designed as a front-end application designed to guide you through the process of generating your key pairs, depositing your ETH, and registering your validator on the Ethereum 2.0 beacon chain in the most secure way possible. The deposit interface will be hosted by the Ethereum Foundation.
During your journey through the Eth2 Launch Pad, you will:
Learn about the risks and responsibilities of becoming a validator on Eth2
Select how many validators instances you would like to run
Securely generate the validator key pair and mnemonic phrase, via an offline CLI for each validator instance you would like to run
Generate and upload the deposit data file(s) containing your validator public key(s) required to register your validator(s) upon completion of the Launch Pad
Deposit 32 ETH per validator instance into the official deposit contract. This will be done through a trusted and verified access point hosted by the Ethereum Foundation.
Before you start your journey as a validator, it is paramount that you are aware of your responsibilities, including the rewards of fulfilling your duties to provide uptime and behave honestly in the consensus process, as well as the risks and penalties of failing to do so. Because the initial deposit of ETH into the deposit contract is one-way until later development phases, outlining and understanding the trade-offs of participation and setting expectations is critical.
For this reason, the Launch Pad was designed to act as both a deposit application as well as an educational tool box and source of truth curated to educate future validators about:
Economics and Rewards
Penalties and Slashing
Participation Risks and Trade-Offs
Warning messages and explanatory sections introduce “deliberate friction” in the user experience to slow down users and ensure they take in all the critical context provided to them.
Key Pair Generation
Validators using the Launch Pad will be required to generate their mnemonic and validator key pairs, which will be used when validators are ready to launch their respective validator clients. The public key allows you to view your validator stats and activity, while your private validator key, which must remain online at all times, is used for voting and proposing blocks.
In the Launch Pad, validators will also generate a mnemonic phrase to generate their withdrawal keys. During Phase 2, this mnemonic phrase will enable you to generate the keys to your castle, which will allow you to withdraw your ETH deposit and accrued rewards.
The generation of the validator key pair and mnemonic phrase has been designed to be done via a CLI to enable this process to be done in a secure, offline environment.
We are thrilled to have helped pave the way for initial deposits on the Ethereum 2.0 test- and mainnet and are excited to see applications and client integrations develop alternative pathways to interact with the Eth2 deposit contract in the future. A special shoutout to Chris Battenfield and George Weiler for their development work on this effort.
Watch this space for some more exciting announcements from our team!
Written by Collin Myers and Mara Schmiedt