How to create an offline usb key to safely store and spend bitcoins using and Offline Electrum wallet, without having an extra computer.
Let's say you have an onlne computer with windows/mac/linux, and you want to really make sure your bitcoins are safe from hackers, malware, trojans and what not. You can use an Offline Debian installation with Electrum on it to store your bitcoins and sign transactions.
You need : 1 fast usb stick (so it boots quickly from linux), 1 average usb stick (to transfer the Master Public Key from the Offline Electrum to the Online one, and to transfer transactions) and, 1 blank DVD
- download Debian 7.3, you just need DVD-1 -
http://cdimage.debian.org/debian-cd/7.3.0/amd64/iso-dvd/- burn Debian DVD-1 on the blank DVD
- download Electrum-1.9.6.tar.gz from Electrum website, and also google for :
python-pkg-resources_1.4.2-1_all.deb
python-pip_1.1-3_all.deb
python-setuptools_1.4.2-1_all.deb
python-slowaes_0.1a1-1_all.deb
ecdsa-0.9.tar.gz
- copy the packages to the average usb stick, and disconnect it
- disconnect your other hard drives (to prevent bootloader from rewriting your MBR), disconnect from internet cable (just to be sure), and install debian 7.3 on the fast usb stick.
- when asked "use another DVD image" chose No
- when asked "use network mirror" choose No
- when asked about partitions, choose Guided - use entire disk
- at the Software selection step, just tick : Debian desktop environment, Print server (if you want to be able to print your private keys), Laptop (if you will use the usb stick on a laptop at some point), and Standard System Utilities.
- install the GRUB boot loader on a hard disk, choose YES, otherwise your usb key will not be able to boot linux by itself
- when install is done, you can boot from your new Debian installation
- connect the average usb stick and copy the Electrum packages to Desktop, and keep Debian install DVD inside DVD reader
- make sure to disable the network in the System Setings -> Network.
- open the Terminal app from Applications, and type :
su root
Enter root password.
(if using windows, for the Online Electrum, your clock is set to local time, so make linux also use local time instead of UTC by typing : hwclock --systohc –localtime)
apt-get install python-qt4
cd ~/Desktop
dpkg -i python-pkg-resources_1.4.2-1_all.deb
dpkg -i python-setuptools_1.4.2-1_all.deb
dpkg -i python-pip_1.1-3_all.deb
dpkg -i python-slowaes_0.1a1-1_all.deb
pip install ecdsa-0.9.tar.gz
pip install Electrum-1.9.6.tar.gz
- after that, you can go to /usr/share/applications, find Electrum and right-click -> Copy to Desktop.
- Create a new wallet and write the seed down, go to Settings -> Import/Export and copy your "Master Public Key" and put it in a text file on your average usb stick.
- That’s it, you have your offline debian install ready to use with Electrum.
- Shutdown, reconnect your hard drives and internet cable.
- Boot into your main OS, install Electrum, select Restore in the dialog box shown on the first start up, use the "Master Public Key", and you are ready to go. You can now use the average usb stick to copy transactions from the Online Electrum to the Offline Electrum, for them to be signed.
Why Debian ? because it’s 100% open source, and the kernel does not contain closed source blobs (non-free blobs), so you can trust it has been checked by 3rd parties.