While one of Bitcoin’s greatest achievements is giving users the ability to be their own bank and take control of their finances directly, this ability comes at a cost. In the immortal words of Uncle Ben: “With great power comes great responsibility”
This is why keeping your coins on an exchange is not advisable. You’re giving away control of your BTC to a third party and exchanges are known to be “hackable” and given that they hold large amounts of funds, they are prime targets for cyber criminals. However, keeping your funds safe can also be a challenge.
While there are hardware wallets that can be used to increase your security, these may not be affordable for everyone. Other cold storage solutions also require a second device. However, a regular piece of paper can come a long way in ensuring that you are in control of your funds and that your private key cannot be reached.
Paper wallets are simple. They are basically a private key and public key printed or even written down on a piece of paper. When you want to receive Bitcoin, you just check the piece of paper for your public key. When you want to send Bitcoin, you check for the private key and sign a transaction with it and broadcast said transaction (You can even sign your transaction offline and broadcast it online to be sure).
In this guide, we’re going to teach you how to make a simple paper wallet and how to use it to send a transaction. We’re going to use Bitaddress to create our paper wallet. Bitaddress “collects mouse movement data into the seed pool before generating the first address”. Read more
Part 1 - Create a paper wallet
Step 1: Click here to go to Bitaddress
Step 2: Move your mouse around or type some random characters into this textbox. This will add entropy to the wallet generation process and make it safer
Step 3: You could print the wallet as is, but we’re going to take a bit of time to make it better. Click “Paper Wallet”
Step 4: You can now choose how many wallets you want to generate and whether or not you want to keep the artwork provided by Bitaddress
Step 5: If you changed the settings (number of wallets and/or artwork) click “Generate”
Step 6: Now, click “Print”
Step 7: Now simply print the document according to your preference
Pretty simple right? Alternatively, you can even generate a wallet with Bitaddress and just write the keys down. Or you could also use coinb.in, for example, which is what we’ll use to make transactions in the next part of the guide.
Part 2 - Make a transaction
To make a transaction, you will need to have funds, of course, and you’ll also need a software tool to send your coins. We’re going to use coinb.in. Coinb.in is a simple-to-use web based wallet that can be use to sign and broadcast transactions separately. This means that we can download the page and sign the transaction offline and then broadcast it online. If you’re worried about safety, this is ideal. If you’re just using a paper wallet for convenience, then you can do both steps online.
Step 1: Click here to go to Coinb.in
You can now download the page by clicking “download” at the bottom of the site.
You’ll download a .zip file with the website within. All you have to do is extract the file and open the “index” htlm file and you’ll see the page exactly like it was running online. This can only be used to sign the transaction and not to broadcast one or create a wallet. If you’re going to sign the transaction locally, turn off the internet.
Step 2: Click “New”
Step 3: Then click “Transaction”
Step 4: Enter the address (1) you want to send BTC to and amount (2) you want to send
Step 5: Now enter the wallet address from which you’re sending (the public key in your brand new paper wallet)
Step 6: Click “Load”
You will see that the input information relative to the address will be “imported” into the transaction
Step 7: Now click “Submit”
You will now be shown an unsigned transaction. You’ll need to copy it in order to sign the transaction and then broadcast it. You can now sign the transaction online or offline like we previously talked about.
Step 8: Let’s sign the transaction. Scroll up and click “Sign”
Step 9: Paste your private key from the paper wallet (1) and the unsigned transaction (2)
Step 10: Now, click “Sign”
You’ll be shown the signed transaction, you’ll need to copy/save it. We’re almost done! Now, it’s time to broadcast it into the network.
Step 11: Now click "Broadcast" to send the transaction
Step 12: Paste the signed transaction
Step 13: Click “Submit”
That’s it! Your transaction will now be processed. Alternatively, you can also use other apps like Electrum, for example, to sign transactions. Have fun with paper wallets!