Proper Exits

Manual exit

Exiting CSM-deposited validator keys works the same way as exiting solo staking validator keys.

Refer to this dedicated guide for exiting validators put together by Remy Roy.

You can also follow the steps extracted from Remy's guide below (Linux only).

Overview of the validator exit process

The whole process can feel daunting so we will break it down into 3 phases.

Phase 1: Prepare the necessary files

  • Ensure that you have either your 24-word mnemonic or your validator keystores + the password to decrypt it.

If you have neither, you will likely never be able to exit your validators, so keep both items secure!

  • Download the latest version of ethdo

  • Print the sha256 checksum

  • Verify the checksum of the downloaded zipped file using the output of the previous command.

Expected output:

Do not proceed if the checksum verification fails, and reach out for help on the Lido or Ethstaker discord.

  • Generate the offline-preparation.json file using ethdo

Expected output:

Phase 2: Transfer files into an air-gapped machine

Recall the steps in the Install and prepare the OS section, but instead of installing Ubuntu as the OS, we will install TailsOS for extra security.

  • Prepare 2 brand new USB drives

  • Plug the first USB drive into your validator node machine and identify the USB drive on your terminal

  • After you find it, you can proceed to mount this first USB drive onto the /media folder

  • Load your validator keystores, the downloaded ethdo zipped file, the sha256 checksum, and the offline-preparation.json file into the first USB drive

  • Download the latest version of TailsOS into your laptop from the website and follow the instructions to upload the downloaded file for checksum verification

  • This step creates the airgapped machine: Unplug any wired connections from your laptop. Then, follow the steps in the Install and prepare the OS section to flash the second USB drive with TailsOS and boot up TailsOS on your laptop. Stop just before "Install the SSH server"

  • Plug the first USB drive into your laptop that is now running TailsOS and transfer all the files into the home folder

Phase 3: Signing the exit message

Loading the files onto TailsOS

  • Open up the terminal on TailsOS

  • Print the sha256 checksum

  • Verify the checksum of the downloaded zipped file using the output of the previous command.

Expected output:

Do not proceed if the checksum verification fails, and seek help on the Lido or Ethstaker discord.

  • Extract the ethdo file

Generate the exit message (Choose your method)

  • Method 1: Using the validator keystores + password

  • Method 2: Using the 24-word mnemonic

Copy the resulting file (e.g., 459921-exit.json) into your first USB (currently plugged into your TailsOS laptop). This is the exit message.

Broadcasting the exit message

  • Restart your TailsOS laptop and unplug the second USB flashed with TailsOS to revert to your normal operating system

All files that were previously copied onto TailsOS will be wiped automatically upon restart or shut down

Your validator will now enter the exit queue. You must keep your validator node running until it is fully exited, or you will suffer offline penalties.

Automated exit (WIP, do not use)

Because exit requests need to be fulfilled within 96 hours, CSM operators can choose to run a service called the validator-ejector to automate this process.

Using the validator-ejector package

Download the latest git repository of validator-ejector.

Create the environment file and open it up for editing.

Replace the following environment variables in the .env file with the details below.

Last updated