A couple days ago, i tried to help a user with his paper wallet questions on bitcointalk but ended up giving a big, technical explanation… A different user , correctly, pointed out that this was a nightmare for the standard user. That’s why today, i’m writing a small article on ONE of the ways to create, deposit to and sweep a paper wallet safely…
Creating a paper wallet
- Make sure your PC is clean, make sure you have your latest OS updates, virus scanner, malware scanner, firewall,… Make sure your PC isn’t acting weird
- Close all applications exept a clean browser
- Download the latest sourcecode of bitaddress.org from github
- DISCONNECT your PC from the internet, do no RECONNECT untill this tutorial explicitly says so!!!
- Unpack the zipfile you got from github, you can use any trusted application you want for this.
- browse the unpacked files, open bitaddress.org.html using your browser
- move around your mouse on this page, or type some random characters into the textbox that will be shown on the page
- once you generated enough entropy by moving your mouse/typing (the counter on the page will go to 100%), the bitaddress.org menu will appear
- Click on the “paper wallet”-tab
- chose the number of address and addresses per page… It’s up to you how many paper wallets you want to generate. You’re free to use Art or not, technically it doesn’t make any difference at all, If you disable art, you’ll have a dry, white paper containing all data, if you enable art, your paper wallet will look nice
- Enable the checkbox BIP38 Encrypt? And chose a STRONG password. If you chose a strong password, your paper wallet will be allmost impossible to hack with the current state of technology. I’ve read a nice article on bitcointalk about this here. As you can read here, a paper wallet which private key was bip38 encrypted with a 5 letter password remained uncracked for over 2 years, eventough the encrypted private key and the length of the password was leaked.
- Click on generate and wait (this step can take a couple of minutes)
- At this point, you’ll be shown your paper wallet.
- There are several options now: if you have a local printer, directly connected to your offline PC, you can print your paper wallets by clicking on the print-button. If you don’t have a printer directly connected to your PC, i suggest clicking the print-button and printing to a PDF-file. Worst case scenario, you can take a print-screen (Ctrl-print Screen), and paste this print-screen in your image editor (Ctrl-V). Make sure your image or pdf file are saved onto a usb stick.
- Remove the usb-stick (in case you didn’t already print your paper wallet), close all windows and RESTART your computer
- you can now go back online
- It would be best to find an offline printer that can print images or pdf’s directly from your usb stick, so your paper wallet is never found on any online device
- Restart your printer after printing your paper wallet
- It would be wise to make at least 1 copy, since losing this paper wallet would mean losing all your funds! Laminating and storing in a cool, dry, safe place also works!!!
Depositing to a paper wallet
This one is relatively easy: the left side of your newly created paper wallet should contain the QR code of your address. Your address should also be printed clearly on your paper wallet (your address is the shortest of the 2 codes that are printed on your paper wallet, and it’s the one started with the number 1).
If you have a QR code scanner, you can scan the QR code. If you don’t have a code scanner, you can copy the address by hand… Make sure you double check this address (Capitalisation is important). I advice you to use my address validator just to be sure.
Once you have the address copied and validated, you can use this address to deposit money to… Either as a withdrawal address from an exchange or casino, or as a “pay to” address in about any wallet software you can think off.
Sweeping your paper wallet
I’m going to explain how to sweep your wallet using electrum, since i personally use either electrum or bitcoin-cli (the command line interface of bitcoin core). Since this is an enduser tutorial, i guess there is no need to explain how to use the command line to sweep a wallet, so i’ll stick to the electrum explanation 😉
- make sure you have the unzipped sourcecode of bitaddress.org on your pc (look at the first part of this tutorial)
- disconnect from the internet
- open bitaddress.org.html
- click on wallet details
- copy the bip38 encrypted private key from your paper wallet into the box saying “enter private key”
- click on “view details”
- enter the password you used when you created your paper wallet
- click on “decrypt BIP38”
- copy the Private Key WIF (51 characters base58, starts with a 5) into a text document, save and reboot your pc
- If you don’t already have electrum, download it here. It’s allways a good idear to check the SSL certificate AND the signature of any binary you download (especially a bitcoin wallet), but that’s a completely different tutorial.
- If you’re new to electrum: install electrum, open electrum and follow the wizard to create a new wallet. Write down your seed words AND chose a VERY strong password
- Once you’re done following the wizard (or when you already owned an electrum wallet), make sure you open the wallet.
- Go to wallet => private keys => sweep
- Copy the private key you saved in a text document into the box “enter private keys”, and click on “sweep”
- Follow the wizard, and you’re done 🙂 your paper wallet is now swept into your electrum wallet
- Take a black, permanent market, and clearly mark your paper wallet as being used!!! Keep the paper wallet, but never ever deposit any funds onto it ever again!!!