🛠️Validator Setup

Prerequisites for Validator Setup:

  • Basic familiarity with command line interfaces.

  • ETH (or Holesky test ETH): 32 + approximately 0.1 ETH for gas fees.

How to Generate Key Pairs:

Step 1 - Download CLI Application

Visit the Ethereum organization's GitHub page and navigate to the Releases section.

The README contains instructions to use the software, but the quickest (and suggested) way remains to use the pre-built binaries.

Download and extract the correct binary for your operating system.

Step 2 - Generate Deposit Keys

Decompress the downloaded file, navigate to the directory where the deposit execution file is located. Then run the following command:

Execute the command to generate new validator keys:

  1. Holeksy testnet:

./deposit new-mnemonic --num_validators 1 --chain holesky --eth1_withdrawal_address [YOUR_ETHEREUM_WALLET_ADDRESS]

2. Mainnet:

./deposit new-mnemonic --num_validators 1 --chain mainnet --eth1_withdrawal_address [YOUR_ETHEREUM_WALLET_ADDRESS]

Ensure --chain mainnet is pointed to the actual Mainnet, as failure to do so will result in an invalid deposit. You can ensure that you are on the correct Mainnet by confirming that the network ID and chain ID match the values specified by Ethereum's official documentation. Additionally, you can compare the network's current block height with a reputable block explorer, such as Etherscan, to verify that it is in line with the Mainnet's latest block. You can also check the network's genesis block hash, which should match the expected value for the Mainnet. These checks will help confirm that you are indeed on the correct Mainnet and not on a different network or testnet.

Follow the instructions presented to you in the terminal to generate your keys. Save your keystore and write down your mnemonic for each of your validators. The keystore should be in the validator_keys directory. The public keys associated with each validator should be available in the deposit_data.json.

You should see that you have one keystore per validator. This keystore contains your signing key, encrypted with your password. You can use your mnemonic to generate your withdrawal key when you wish to withdraw.

Refrain from storing keys on multiple validators at once.

Follow the on-screen instructions to create a mnemonic phrase and set a password for your validator keys.

Note the location of the deposit_data-[TIMESTAMP].json file; you'll need this for activation.

Activate Validator Keys:

Prepare to Deposit:

Ensure you have the required ETH (32 ETH + Fees) available in your wallet for the deposit.

  1. Deposit via Staking Deposit Contract:

Visit the Staking Deposit Contract page on Etherscan.

  1. Navigate to the "Write Contract" tab.

  2. Connect your Web3 wallet (e.g., MetaMask).

  3. Fill in the deposit form:

Use the details from your deposit_data-[TIMESTAMP].json file, such as pubkey, withdrawal_credentials, signature, deposit_data_root, etc.

  1. Confirm and send the transaction through your wallet.

Additional Tips for Validators:

  1. Security: Always ensure that your mnemonic phrase and key passphrase are stored securely. These are critical for your validator’s security and cannot be recovered if lost.

  2. SSV Network: When using the SSV network, remember that the node operators will manage the Execution and Consensus clients, so you won't need to handle these components.

Using the Official Staking Launchpad

If you prefer a more guided approach, you can also use the official Staking Launchpad. Although this guide focuses on using the CLI for efficiency, the Launchpad provides a comprehensive web interface that guides you through each step.

Last updated