Setting up Validator Keys

🌱 1. Obtain testnet ETH

Every 32 ETH you own allows you to make 1 validator. You can run thousands of validators with your beacon node. However on testnet, please only run 1 or 2 validators to keep the activation queue reasonably quick.

Option 1: Ethstaker's #cheap-goerli-validator Channel
  • Step 2: Use the /cheap-goerli-deposit slash command and follow the instructions from the bot. You need to start typing the slash command and it will show above your input box where you can use it.

  • Requirement: In order to use the cheap goerli validator process, you must now set your withdrawal address to 0x4D496CcC28058B1D74B7a19541663E21154f9c84 when creating your validator keys and deposit file. This is to prevent abuses of this service.

Option 2: Watch this how-to Youtube video for Goerli ETH

👩‍💻 2. Signup to be a validator at the Launchpad

  1. Install dependencies, the ethereum foundation deposit tool and generate your two sets of key pairs.

Each validator will have two sets of key pairs. A signing key and a withdrawal key. These keys are derived from a single mnemonic phrase. Learn more about keys.

You will also set your ETH Withdrawal Address, preferably from your Ledger or Trezor hardware wallet. However, for testnet purposes it's okay to use a browser/hot wallet address.

🛑🛑 DO NOT USE AN EXCHANGE ADDRESS AS WITHDRAWAL ADDRESS. 🛑🛑

🛑🛑 Double check your work as this is permanent once set! 🛑🛑

The Withdrawal Address is:

  • where your ETH is returned upon "voluntary exiting a validator", or also known as full withdrawal.

  • where you receive partial withdrawals, which is where any excess balance above 32 ETH is periodically scraped and made available for use.

You have the choice of using the Wagyu GUI, downloading the pre-built Ethereum staking deposit tool or building it from source.

Download staking-deposit-cli.

cd $HOME
wget https://github.com/ethereum/staking-deposit-cli/releases/download/v2.5.0/staking_deposit-cli-d7b5304-linux-amd64.tar.gz

Verify the SHA256 Checksum matches the checksum on the releases page.

echo "3f51859d78ad47a3e258470f5a5caf03d19ed1d4307d517325b7bb8f6fcde6ef *staking_deposit-cli-d7b5304-linux-amd64.tar.gz" | shasum -a 256 --check

Example valid output:

staking_deposit-cli-d7b5304-linux-amd64.tar.gz: OK

Only proceed if the sha256 check passes with OK!

Extract the archive.

tar -xvf staking_deposit-cli-d7b5304-linux-amd64.tar.gz
mv staking_deposit-cli-d7b5304-linux-amd64 staking-deposit-cli
rm staking_deposit-cli-d7b5304-linux-amd64.tar.gz
cd staking-deposit-cli

Make a new mnemonic and replace <ETH_ADDRESS_FROM_IDEALLY_HARDWARE_WALLET> with your ethereum withdrawal address, ideally from a Trezor, Ledger or comparable hardware wallet.

🛑🛑 DO NOT USE AN EXCHANGE ADDRESS AS WITHDRAWAL ADDRESS. 🛑🛑

🛑🛑 Double check your work as this is permanent once set! 🛑🛑

./deposit new-mnemonic --chain goerli --execution_address <ETH_ADDRESS_FROM_IDEALLY_HARDWARE_WALLET>

2. If using staking-deposit-cli, follow the prompts and pick a KEYSTORE password. This password encrypts your keystore files. Write down your mnemonic and keep this safe and offline.

Do not send real mainnet ETH during this process! 🛑 Use only goerli ETH.

Caution: Only deposit the 32 ETH per validator if you are confident your execution client (ETH1 node) and consensus client (ETH2 validator) will be fully synced and ready to perform validator duties. You can return later to launchpad with your deposit-data to finish the next steps.

3. Follow the steps at https://goerli.launchpad.ethereum.org while skipping over the steps you already just completed. Study the eth2 phase 0 overview material. Understanding eth2 is the key to success!

🐳 Batch Depositing Tip: If you have many deposits to make for many validators, consider using Abyss.finance's eth2depositor tool. This greatly improves the deposit experience as multiple deposits can be batched into one transaction, thereby saving gas fees and saving your fingers by minimizing Metamask clicking.

Make sure to switch to GÖRLI network.

Source: https://twitter.com/AbyssFinance/status/1379732382044069888

4. Back on the launchpad website, upload yourdeposit_data-#########.json found in the validator_keys directory.

5. Connect to the launchpad with your Metamask wallet, review and accept terms. Ensure you're connected to GÖRLI network.

6. Confirm the transaction(s). There's one deposit transaction of 32 ETH for each validator.

For instance, if you want to run 3 validators you will need to have (32 x 3) = 96 goerli ETH plus some extra to cover the gas fees.

Your transaction is sending and depositing your ETH to the goerli ETH2 deposit contract address.

Check, double-check, triple-check that the goerli Eth2 deposit contract address is correct.

0xff50ed3d0ec03aC01D4C79aAd74928BFF48a7b2b

🔥 Critical Crypto Reminder: Keep your mnemonic, keep your ETH.

  • Write down your mnemonic seed offline. Not email. Not cloud.

  • Multiple copies are better. Best stored in a metal seed.

  • Make offline backups, such as to a USB key, of your validator_keys directory.

Last updated