One of the challenges with bitcoin is to store them securely. There have been several well known incidents where Bitcoins have been stolen. It is no mystery. Bitcoin IS money! It’s the same with Euros or Dollars, when you have it lying around it will eventually be missing.
There is a twist with bitcoin to regular money. With Bitcoin one single piece of information is enough for the thief to steal your Bitcoins: Your private key. With Bitcoin it’s about keeping this piece of information secret.
If you want to know more on how Bitcoin works, read on here. Long read short: There is a public and a private key. One can think of the public key as the account number of a Bitcoin deposit. The private key is the corresponding secret to get access to the Bitcoins in this account. Whenever one wants to transfer Bitcoin to another account this transaction is verified with the private key. Whoever has this key can transfer the Bitcoins away from that account. There is no way of accessing Bitcoins that were transfered away from your account. This is the purpose of Bitcoin. This is by design. So keep this private key a secret!
There have been some approaches on how to secretly store a Bitcoin private key. One can encrypt the wallet.dat file, encrypt the drive the keys are stored on or even take the key offline with a paper wallet. A paper wallet is just a printout of your private and maybe your public key. It is ment to be stored safely (think: bank vault). Anyone with access to the paper wallet owns your Bitcoins!
To print a paper wallet one has to be careful as well: Many printers are not connected to an offline system, which can leak the private key. Also many printers have some sort of cache, that stores everything that was printed. Do not print a paper wallet on a big network printer that is likely to have a hard drive in it. The ideal system for printing paper wallets is offline and does not store the keys in any way. Piper wallet does exaclty that with a raspberry pi and a cheap simple thermal printer. They sell their Piper wallet for $200 (or currently 0.25 BTC). Since they built their product with open source software I thought I’d build it myself for less. I did it for around 100 €:
- thermal printer: 44 €
- Raspberry Pi: 35 €
- treasure chest: 8 €
- button: 2 €
- 3000mA/5V power supply: 12 €
- SD card: ~ 5 €
- some cables that i had lying around
- TOTAL of: 106 €
I hope I can post my working source soon with a step by step instruction. I have some notes on that, but have to rerun the setup process to make sure it is correct.
Remember: Generate your own private keys! If you do: make sure no-one has access to it in the process of printing and storing it. If you don’t you must trust the person you get your keys from, and your bitcoins might be missing some day. This is true for PiperWallet as well. You need to trust PiperWallet to not generate keys based on already known private keys. They could theoretically generate a list of millions of keys. You would not notice that the set of keys is limited as you are not going to print millions of keys and compare them. One needs to trust the vendor!