|22. November 2020||Published|
Important notes & disclaimer
This guide is provided without any warrenty/guarantee (“as is”). Feel free to let us know your feedback! We are happy to apply healthy critique to this guide!
After finishing this guide you got 3 things:
- Your very personal mnemonic on paper, not digitally
- Your deposit data ready to be used on Ethereum’s launchpad
- Your accounts (
validator_keys) to be used by your favorite client to stake with
Steps we go through to make an offline launchpad wallet:
- Download Ubuntu Desktop ISO
- Use ISO to make a bootable USB stick you can boot from. There won’t be anything installed on your computer, we don’t want to leave a trace of your new wallet on your computer
- Copy launchpad’s deposit-cli on USB stick
- Boot Ubuntu Desktop
- Create wallet & write down mnemonic on paper
- Move data on USB stick (except mnemonic of course)
- Boot your standard OS (Windows/…) and make your deposit(s)
- Erase data on your USB stick
Download Linux Live ISO
Using a Desktop Linux USB has some major advantages over executing your wallet creation on your daily driver operating system:
- Everything you do doesn’t alter your persisted data on your computer (no trace of you creating your wallet)
- If your computer is compromised (key logger, trojan, virus, …) this has no effect on the Ubuntu Desktop USB
- Other users on your computer don’t have a chance to recover your mnemonic from deleted files or history
- Best part: Learning something new!
Download Ubuntu Linux Desktop ISO from the official Ubuntu website.
Make bootable USB stick
For this task we use an application named Rufus, it extracts the ISO and creates a bootable USB stick with it. Download the portable version (link named something like “Rufus 3.13 Portable”) and execute it. Windows 10 will probably show you a warning about not knowing the vendor and so on, click on “Run” and the application opens up.
Now we need to select 2 things:
- “Device”: Plug in your USB stick (8gb minimum) and select it from the list. The USB will be completely erased before Ubuntu will be copied on it.
- “Boot selection”: Click on “SELECT” button and choose the ISO you downloaded in the previous step
After choosing all the settings above the “START” button gets active, click on it and a dialog box will pop up:
Select the recommended setting and confirm by clicking on OK. Rufus starts working on the task of making your own bootable Ubuntu Desktop USB. When Rufus finished the progress bar will be green in full and show “READY”. You can close Rufus, we don’t need it anymore.
Next is the deposit-cli of Ethereum’s launchpad: Find the latest release of deposit-cli, make sure you’re on Ethereum’s own repository by checking the url:
github.com/ethereum/eth2.0-deposit-cli and download the latest file with ending
-linux-amd64.tar.gz After successful downloading copy it on the USB as well and rename it to
Boot from the USB
Reboot your computer and enter BIOS when it boots up by pressing DEL or F2 or F10, depending on your computer. Just try it out or read it up by entering your computer model or mainboard model in google. In the BIOS look for “BOOT”, take notes on the boot order before you make any changes! Set the USB stick to top priority. In the case you don’t know how to do this, google your mainboard or computer model and take a look at the manual or forums. Unfortunately BIOS are very different and there is no certain path to achieve this.
Reboot after you saved and exited BIOS. A boot menu pops up, you don’t need to press anything, it will start from USB automatically. Ubuntu asks you after boot to try it out or install Ubuntu, select “Try Ubuntu” by clicking on the button. The desktop shows up like this:
Click on the bottom left corner on “Show Applications” and type in “Terminal”, then click on “Terminal” to start it.
cp /media/cdrom/eth2deposit-cli.tar.gz .
tar xzvf eth2deposit-cli.tar.gz
The lines above extracted the files of
eth2deposit-cli.tar.gz that we are going to use to create a wallet offline.
The directory named
eth2deposit-cli-ed5a6d3-linux-amd64 might have a slightly different name, but the beginning should be the same:
Then answer all the questions or press ENTER and accept the default values (default values are in bracelets
The seed phrase, your very secret way to retrieve your deposits, will come up. Write it down on paper, make sure you don’t misspell or miss anything! Press enter again and enter the mnemonic again to make sure you got everything right.
After successfully entering the mnemonic your keys as well as your deposit data get created and verified.
Congratulations, you successfully created your wallet offline and now we need to make sure your keys and deposit data are copied on the USB stick for you to use on your Windows desktop system:
sudo mount -o remount,rw /media/cdrom
sudo cp -R validator_keys/ /media/cdrom/.
Done, your files are saved and safe on your USB stick.
After successfully creating your Ethereum 2.0 wallet and moving the keys and deposit data on your USB stick it’s time to return to your Windows desktop by clicking on the on/off icon on the right top corner and select restarting. Ubuntu will ask you to unplug your USB stick to reboot. Please do so and boot your Windows, plug in your USB again after boot and open it up. There is a folder
validator_keys on it which contains your deposit data and your keys.
Browse to launchpad.ethereum.org (check the url to have “ethereum.org” as domain!) and click on “Getting Started”, then follow the process, skip the step of creating your wallet/validators because we already did this. Then you are on this screen:
Upload the deposit data file of your USB stick and continue the guided process of executing the deposits.
Congratulations, you did it! Your mnemonic phrase is safe on a piece of paper, no trail of your mnemonic is on your computer! Read your favorite guide on setting up your beacon node and use your
keystore-m_ files to stake.
Erase USB stick data
One thing is still left to do though: You got your keys and deposit file on your USB stick and you should make sure nobody can restore it. Do this by formatting the USB stick after you copied the data to a safe location (e. g. your staking node). Right click on the USB drive, select “Format…”
Make sure to disable “Quick Format” and click “Start”, your USB stick will be formatted, it takes a while.