Pages Menu
TwitterRssFacebook
Categories Menu

Posted by on 5th May, 2013

Create a Bitcoin paper wallet

Create a Bitcoin paper wallet

A paper wallet is nothing more than the information of a Bitcoin key pair, printed on a piece of paper. This key pair, contains the address of where the funds are stored and the private key is the key to send or withdraw those funds. In other words, it is a pre-signed check with bitcoins.

A paper wallet might look like this:

paper-wallet

The reason we want this on paper, is because, ultimately, having this on paper and away from any digital access is the best place to have the key to your funds. Away from your PC. Anywhere else, your data could be compromised by spyware or key loggers.

There are many ways of doing this and everyone seems to have an opinion and a better way of doing this. Many will argue that you have to generate the key-pair on a computer that is air-gapped, or, in other words, is completely disconnected and has never been connected to the Internet, in order to avoid any possible mal-ware intercepting or reading the values of the key pair generated. This approach required you to have a dedicated machine that has a virgin OS, has never been updated or connected to the Internet and exists just to generate your Bitcoin addresses and private keys.

If you have such a machine, the only external code you are bringing into it is the code that is required to generate the valid key pairs.

The two most reliable sites are bitaddress.org and brainwallet.org. Both these sites have their code publicly available, and with SHA-1 hash to verify that the code you are running is indeed uncompromised. Also, the code of these two sites are open source and therefore revised constantly by thousands and thousands of Bitcoin vigilantes and geeks to ensure that nothing malicious is in it.

You could save the page (Save As…) or go directly to their Github repositories (bitaddress and brainwallet) and copy this over to your air-gapped machine. The code you have downloaded has everything  (in Javascript) needed to generate the valid key-pairs.

If you then click on Paper Wallet:

5-8-2013 10-05-45 PM

You can generate printable paper wallets like these:

5-8-2013 10-06-49 PM

These can be printed, folded in three and stored in a safe box. You can then send funds to these addresses and no one could have possibly “sniffed” the private keys.

For the extra paranoid, make sure you incinerate both the PC and the printer used and bury the remains at least 10 feet deep in the woods, to ensure nothing is left in memory of these devices.

For a generally secure approach, you can ensure that your machine is free of any mal ware and then follow an approach as described here: http://blockchain.info/wallet/paper-tutorial.

Remember that your only vulnerable moment is when the private key is rendered on the screen and something, anything, lurking on your machine or over your shoulders could read that. It could be a key logger or a browser extension that happens to have access to reading the content. Also remember that running your virus scanner does not guarantee that you are free of anything malicious on your machine.

The chances are slim, but if you are storing a considerable amount in these addresses, you better be careful. As Bitcoin becomes more popular, and people start storing more coins in their wallets, there will be more elaborate attempts to intercept, recognize and steal bitcoins, so be very cautious when generating paper wallets.

Remember that Bitcoin transactions are irreversible. Once someone has access to your address and empties it, your funds are gone forever. There is no 1-800 number to file a theft report at. Be as careful as you feel you should be. It is your money.