This is part two of a five-part series on making a secure Bitcoin paper wallet.
If you missed the first part check out Part 1. PGP Software Verification.
You can also go on to Part 3. Adding Bitcoin To A Paper Wallet. If you you already know how to make a secure paper wallet.
This tutorial is for a complete beginner. If some of the steps seem redundant please jump ahead.
A paper wallet is a form of cold storage for cryptocurrency. This means that it is completely removed from the internet. It is not stored on any online server or computer.
This renders paper wallets safe from a hardware failure or attacks from hackers and viruses.
To make a cryptocurrency wallet work, you need two keys. A public one that you use to fund the wallet, and a private one that is the link to your bitcoin.
You can share the public key with anyone because they can only put money in the wallet with it. If someone gets the private key they can steal everything in there.
This is a proven way to store digital currency, but there are some precautions you need to take.
Plain Paper Wallet
In their most basic form, a paper wallet can be a plain piece of paper that you write the keys on. The problem with this method is handwriting can be hard to read. If you can’t read the private key, you’ve lost your money.
Another risk is that someone may see the private key when you write it down or at some later time. It is only paper, so water, fire, or fading ink can render it unreadable. Over time it can break down and rot away.
Printed Paper Wallet
The next level in paper wallets is to print them. This shares the same frailties of the basic white paper version. It does improve the readability.
The other factor to consider is what type of printer you should use.
Both standard printers have issues.
The ink printed on an inkjet fades over time. A small amount of water will make the ink bleed and destroy the printed keys. If you do decide to use an inkjet, you need to take a few precautions.
1. Use Teslin synthetic inkjet paper.
2. Keep your wallet in a waterproof bag.
3. Spray the paper with Preserve It made by Krylon. This protects the paper from moisture and UV.
A Laser printer is better for printing wallets but you still have to be careful.
1. Use Revlar waterproof, tear-resistant paper.
2. Seal the wallet in a waterproof bag.
Laminating A Wallet
This is where an inkjet has the advantage over a Laser printer. The ink used for Laser printers is plastic. The heat from the laminating process could destroy the printed keys. Always do a test on an empty wallet if you are considering laminating yours. You can then see if it works without damaging the paper or keys.
All that said, printing paper wallets is worth learning to do. Even if you do not plan to use them, you never know when you might need one.
A couple of questions I am often asked are:
Where do the keys come from?
There are several paper wallet generators available online. Although, there is a security risk generating keys this way. Malware could be hiding on your computer. It waits until it recognizes that you have generated a key and then copies it.
There is a much safer way to generate your keys. I’m going to walk you through it in this tutorial.
Can’t two of the same private key get generated, causing a security risk?
That is one of the first things I thought of when I got into crypto. I did some research and according to some clever math type people, it is near-impossible. It would take almost an eternity to generate two keys the same. Although, if the generator has a fault it becomes a lot more of a possibility. There has been an issue with a faulty Android App. They cleared the issue up.
BUT. It may not be as impossible as the ‘experts’ say. There is a website called Large Bitcoin Collider. They are trying to find two generated private keys the same or ‘collisions.’
LBC have found Bitcoin addresses with funds on them. The site does not advocate stealing the money, their search is only to prove it is possible. If anyone finds a private key with funds they recommended transfering it to a custodial address. Then they ask the finder to announce it on their forum.
They even have a trophy page for keys found by the pool.
As we have learned in the past, when it comes to technology, some smart criminal finds a way to hack it. Never leave all your funds in one wallet, you never know.
Generate Paper Wallet Keys The Safe Way
The safest way to generate keys is using the generating software completely offline.
This is money we’re talking about and you should do everything you can to safeguard it. You have to treat your wallets the same or even more careful than cash.
Go through part 1 and then come back here to make your wallet.
Using Your Verified Wallet Generator
The safest way to generate a wallet is to use a bootable drive with the Ubuntu operating system. There is a section on how to do this at the end that you should read.
You will be using the generate-wallet.html file you verified in part 1.
*This stage generates long keys. The easiest way to input or copy keys is to scan the generated QR codes. Cut and paste will work fine also.
1. Switch your computer off. Unplug your modem. Then restart your computer offline.
This may seem a bit ‘James Bond’ but it is necessary.
2. Find the folder you put the generate-wallet.html file in part 1.
4. Drag your mouse around the generator. You will notice the numbers moving and the counter on the top right counting down. This indicates how many numbers you have left to generate. You can also type in random keystrokes to generate the numbers in the small white box.
5. Once it generates the keys you will see the wallet printing instruction page. If you look on the bottom right, it tells you if you are offline and gives you a link so you can check.
*Only use wallets you print offline to store currency.
6. Go through the steps on the instructions page. I have also included a video to show you how to print, cut and fold the paper wallet from the designer.
If you look at the wallet below you can see I have marked the public key in green. You fund the wallet with this key. You can let anyone see it. I have circled the private key in red. You must never let anyone see that.
The software instructions and video are well explained. I have added notes for each tab/page so you understand what is going on before you print your wallet.
7. After you have calibrated your printer go to the next tab ‘Print Front.’
Here you can see three buttons. I will explain what they are.
Random Generate New Wallet – Self-explanatory but you may get here and decide you want to start again. Someone may have seen your private key. You might have forgotten to unplug your modem when you generated the first wallet.
Enter my own key – Enter my own key is for generating a ‘vanity address.’ Instead of the usual random numbers, you can generate something like 1SAM48PVKQdqNFa4vX71xLUC5A1Za7Lr4a. The 1SAM48 is for 1 SAM 48.
Dice rolls – Are what they sound like. You can use offline analog dice rolls, cards or any source you want to generate random numbers.
Brain Wallet – For those who do not trust computers. A brain wallet is a human remembering a mnemonic phrase to recover their Bitcoin. This is not a secure method of storing Bitcoin. The person can forget the phrase, become incapacitated, or die.
BIP38 Encrypt – This provides your wallet with encrypted password protection.
If you generate a wallet without using BIP38 and someone sees the private key, they can empty the wallet. With BIP38 encryption, they cannot get the money unless they figure out your password.
To tell the difference between encrypted and unencrypted keys look at the numbers.
A WIF (unencrypted) key starts with a 5.
A BIP38 (encrypted) key starts with a 6.
If you look at the picture you can see the two different types of key. The encrypted one is on the right. It is the same private key for the same wallet. Without the password, no one can get the money if you’re using encryption.
8. To encrypt your wallet: Click on the BIP38 Encrypt box and this window will pop up.
The window has a warning about using encryption. You should read this and make sure you understand it.
9. Type in your password. Make sure it is something no one can guess. Write it down and store it somewhere safe. It has to be at least 3 letters/numbers to work.
10. Click on the TURN ON BIP38 ENCRYPTION button. It may take a while to generate the private key depending on your computer.
The encrypted key wallet will now display. These have more of a blue tinge than the green of the non-encrypted wallets. You will also notice that your password is in the BIP38 box at the top. There is also an option to change the password if you want.
If everything is okay then follow the same instructions as before. Print and make the wallet.
11. Go to the Validator Decrypt tab and validate your private key. This will also decrypt BIP38 encrypted keys if you have the password. As mentioned before it is much quicker if you use the QR code to scan your key in.
As you can see below, the private key is valid. You can use this to print a new copy of this wallet in case of damage to it.
Destroying the actual paper wallet won’t stop you recovering your Bitcoin. As long as you have the private key. If you have encrypted it you will need the password as well.
12. If you encrypt your wallet with BIP38: Enter your key as before. It asks for the password.
13. Enter the password and the unencrypted private and public keys will generate. As you can see they are the same as the unencrypted wallet.
*Once you have printed your wallet you should disconnect your offline printer. Then restart your computer and plug your modem back in.
Making A Paper Wallet Using Ubuntu For Even More Security
You should consider using Ubuntu Linux on a bootable drive for an extra layer of security.
Even though generator sites boast SSL-encrypted security, that is not enough. Your computer could still have malware on it.
A safer way to print your wallet is to also run a bootable partition USB drive. This drive should never go online. The operating system is on the removable drive. You use this in place of your regular operating system.
You will need to format the USB drive so it is bootable.
This will work on a Mac or PC.
The Ubuntu website has detailed instructions for creating a bootable drive. It also shows how to set up the operating system.
Click here for PC.
Click here for Mac.
If you get stuck on PC there is more help here.
If you’re not technical you can buy a pre-formatted boot-drive. The operating system and the generate-wallet.html file are already on there. Ready to print your wallets.
Get that here.
If making your own boot drive is something you don’t want to tackle. You can use the operating system on your computer as long as it is offline. I would give Ubuntu a try. It is easy and you will discover how great Ubuntu Linux is.
About your printer and security
There are security issues with some printers. I have some tips to help you secure your printer and computer drives. Click here.
You can find the other parts of the series here:
Additionally, there are two related posts on security for Paper Wallets.
Get our FREE how-to video series on cryptocurrency transactions