Skip to content

Validator Quickstart

Install Dependencies

Clone the repo

git clone --branch fix/set-builderapi --single-branch https://github.com/interstate-labs/eth-docker.git
cd eth-docker/interstate

Update the secrets.env file

Warning ensure the below fields are unique every time this setup is run. Signing up for two validators with the same private keys will cause a double attestation which will result in a slash of 1 eth and exit.

// Set different values for each of these, use `eth2-val-tools mnemonic` command to generate mnemonic
VALIDATORS_MNEMONIC=
WITHDRAWALS_MNEMONIC=
 
// Set private and public keys which store eth. 
# Public address of wallet which holds testETH
ETH1_FROM_ADDR=
# Private key of the wallet which holds testETH
ETH1_FROM_PRIV=

Run the setup

./quickstart.sh // this generates the keystores, deposits to become a validator, runs valdiator nodes and sidecar.

Wait until the beacon node is fully synced and then run

cd .. && ./ethd keys import // Register validator keys to validator nodes
./set_withdrawal_address.sh // After validators are activated, you can set withdrawal addresses
 
// After running the above line, you can see the broadcast message in `./staking_deposit-cli-948d3fc-linux-amd64/bls_to_execution_changes/`
// Broadcast that message in https://holesky.beaconcha.in/tools/broadcast to set withdrawal addresses.

And you're running the interstate-sidecar and an ethereum validator on testnet!