<p>Use <a href="http://www.bitaddress.org/">bitaddress.org</a>. It is a single HTML file so you can save it and generate addresses offline for extra security.</p>

CC BY-SA 3.0
2011-09-18T13:50:48.667Z
2011-09-18T13:50:48.667Z
nmat
<p>For a PDF wallet give <a href="http://strongcoin.com" rel="nofollow">StrongCoin.com</a> a try. The PDF wallet will have your private keys encrypted (AES 256bit) with a pass-phrase you supply.</p>

<p>The encryption is done with JavaScript on the client side so your private keys are not exposed to the servers.</p>

CC BY-SA 3.0
2011-09-18T16:12:04.587Z
2011-09-18T16:12:04.587Z
Ian Purton
<p><strong>My favorite method:</strong></p>

<ul>
<li>grab out a old/unused pc/mac</li>
<li>install a linux over usb (maybe <a href="https://tails.boum.org/index.de.html" rel="nofollow">Talis</a>) (make sure your USB stick is clean!)</li>
<li>download a recent version of bitcoin-core (check hash, verify gitian signatures)</li>
<li>copy bitcoin-core over usb to your offline machine</li>
<li>start <code>./bitcoind</code></li>
<li><code>./bitcoin-cli getnewaddress</code> (gives you a new public key)</li>
<li><code>./bitcoin-cli dumpprivatekey</code> (gives you the corresponding private key)</li>
<li>print or write down both strings (address can be recreated from private key, but print it anyhow)</li>
<li>verify the printed or written down strings</li>
<li>try to delete printers cache (power off, reset)</li>
</ul>

<p><strong>Now you could delete/format the pc/mac.</strong>
But maybe it's worth keeping your new offline computer to generate new addresses or sign transaction in a "cold space/wallet".</p>

CC BY-SA 3.0
2015-06-21T11:13:58.070Z
I have tried to print a paper wallet before, but after print came out. No QR code is printed on it. QR code boxes of both public and private keys are blank.
Nilesh Talwekar
CC BY-SA 3.0
2015-06-21T14:15:59.417Z
Better use WIF private keys instead of a QR Code.
Jonas Schnelli
CC BY-SA 3.0
2016-09-08T22:19:04.937Z
Can you do the 12 words type key back up using this?
dibs
CC BY-SA 4.0
2020-11-11T20:43:49.087Z
I think this is highly inadvisable. Unless you really know what you're doing, this will cause you to lose money through change addresses not being part of your paper wallet.
Pieter Wuille
CC BY-SA 3.0
2015-06-21T11:11:27.027Z
2015-06-21T11:11:27.027Z
Jonas Schnelli
<p>An alternative is to buy <a href="http://www.bitbills.com/how.html" rel="nofollow">BitBills</a> or something similar. That is much safer (because the key is not visible unless you break the bill) and can also be used as "cash" (you can give it to someone).</p>

CC BY-SA 3.0
2011-09-15T22:44:04.430Z
2011-09-15T22:44:04.430Z
Thilo
<p>You don't want to "save" an existing address as a paper wallet, and instead you want to create (securely) an address (e.g., using <a href="http://bitaddress.org" rel="nofollow">BitAddress</a>) and then make a payment that spends your coins to that address.</p>

CC BY-SA 3.0
2013-09-28T21:04:34.597Z
2013-09-28T21:04:34.597Z
Stephen Gornick
<p>I read all of your answers, and I couldn't help wondering... whats wrong with writing down the actual private keys on a piece of paper?</p>

<p>What I did was following: I ran <strong>listunspent</strong> in the console first, to obtain the list of addresses worth safeguarding. Then I ran <strong>dumpprivkey</strong> for each and every address. I printed out what I got... did I do anything wrong?</p>

<p>To optimize the whole process, I could do a payment to myself to a fresh address of mine, to transfer everything I got to that address. After necessary confirmations, <strong>listunspent</strong> would retrieve only one address, wouldn't it?  </p>

<p>Call it <em>a poor man paper wallet</em>, but this is pretty simple and straightforward, isn't it?</p>

CC BY-SA 3.0
2013-12-04T13:16:55.883Z
What's wrong is that if you make a mistake you won't be able to spend your coins. What's even worse is that you won't learn you made a mistake until you go to spend your coins i.e. in the distant future. So in the meantime you'll be living your life and spending money with this mistaken belief that you have this stash of coins saved up that you can use should you ever need to.
Abdussamad
CC BY-SA 3.0
2013-12-04T13:35:27.403Z
What possible mistake I can do?
Mittag Leffler
CC BY-SA 3.0
2013-12-04T18:10:13.293Z
If you copy a character or two incorrectly for example. There are like 50+ characters in a privkey and if you make a mistake and get one or two wrong it is basically useless.
Abdussamad
CC BY-SA 3.0
2013-12-04T11:34:56.063Z
2013-12-04T11:34:56.063Z
Mittag Leffler
<p>Bitcoin Armoury is the best thing out there for this.</p>

<p><img src="https://i.sstatic.net/Ge3sd.png" alt="enter image description here"></p>

<ul>
<li>What you want to do is create a new wallet with armoury, create a receiving address and send your BTC there. </li>
<li>The best thing is you do not need to even be connected to the network, synchronized or anything. Armoury can run offline in the dungeons far underneath the earth (like your cellar :) )</li>
<li>You then create a paper backup and print it out 2 or three times. Go and store it in your bank, in your important documents and at your mums house.</li>
<li>Delete armoury. (Yes, but make sure you have your paper backups stored safely!)</li>
</ul>

<p>Your coins will hang in limbo (on the network) without any transaction history or block chain tracking. COmpletely anonymous and unclaimed.</p>

<p>Now- You might feel like you just threw your coins into thin air and have this uneasy feeling of you will never get your coins back! I know I did. So this is what I did.</p>

<p><em>I followed the whole process I mentioned above. Created a test wallet. Went to another computer somewhere else and did the same, except I imported the wallet from the paper backup. SYnchronised to the bitcoin network. Viola - The coins appeared in the transaction blocks and in my wallet ready to spend</em></p>

<ul>
<li>It is also good for managing many online wallets at the same time. One for savings, possibly donations from your websites or blogs, and a personal one, and even offline unsynchronized for the long term anonymous storing of coins.</li>
</ul>

<p><em>As long as the bitcoin network will be running you will never lose offline transactions. Just make sure to keep your paper backup in atleast 3 secure seperate place- and no. Do not store it on picasa albums or gdrive.. keep it offline in a bank, locker and at your nans house under the bed, laminate it, put it in a box and bury it in your back yard next to the tree house.</em></p>

CC BY-SA 3.0
2013-09-06T10:02:59.030Z
2013-09-06T10:02:59.030Z
Piotr Kula
<p>Currently the most popular method is to use something like <a href="https://github.com/joric/pywallet">pywallet</a> to export your public/private keys and simply <a href="http://qrcode.kaywa.com/">generate</a> a text QR code for them. Typically separate QR codes are generated for the public key and private key so that one code may be used to receive payment without giving away the private key which allows spending from the account. There are some alternatives, however, depending on your paper wallet needs.</p>

<p>Casascius' <a href="https://github.com/casascius/Bitcoin-Address-Utility">Bitcoin Address Tool</a> is an excellent way of saving bitcoins in an easy to recover format. Though it doesn't yet support QR codes it does have the ability to generate a paper wallet from any passphrase. Once generated you could store the public and private keys as QR codes using any of a number of applications or online generators. Additionally, you could store the passphrase in a QR code and use it to recover your addresses at any time.</p>

<p>I specifically suggest this as opposed to simply exporting keys with pywallet and QR-ing them because this method would let you store more than one wallet address using a single QR code since any passphrase can generate up to 999 addresses deterministically in such a manner. Of course having a simple public key in QR code form also lets you scan the address with a smartphone or computer to send coins, so ultimately the solution depends on your usage.</p>

CC BY-SA 3.0
2011-09-15T21:52:56.090Z
The short version of the underlying mechanism is this: You generate a random string of characters. You use the hash of those characters as the private key. You send the coins to the corresponding account address (hash of the corresponding private key). You print the string of characters on the paper.
David Schwartz
CC BY-SA 3.0
2011-09-15T21:56:29.713Z
Exactly. You could certainly print the string of characters on the paper in plaintext but I recommend *also* having a QR code - by doing BOTH you ensure that you have a computer-readable value for convenience but should the QR code become too degraded to scan, the text may still be readable by the human eye - especially if you use a passphrase instead of a bunch of random characters since even whole words obliterated may still be recoverable from a passphrase.
David Perry
CC BY-SA 3.0
2012-06-05T07:52:46.293Z
Can I select any string of characters? How do I use the bitcoin-application to select what "random string"s bitcoins I should access? What kind of hash is used (md5?)
Kristoffer Nolgren
CC BY-SA 3.0
2012-06-05T15:33:07.327Z
@KristofferNolgren for any given string of characters x, there is a hash sha256(x) which almost certainly represents a valid private key, so yes you can select basically any string of characters, though you should treat that string like the world's most secure password since anyone guessing it gains access to your Bitcoin account. The functionality to generate a keypair in such a way is not built into the standard client but it can be done with the tools mentioned above, specifically Casascius' bitcoin Address Tool.
David Perry
CC BY-SA 3.0
2012-06-05T15:41:22.213Z
A cool but somewhat foolish idea is actually to use a poem etc as your key-string. If you use two of them, the password strength is probably strong enough. Also you don't have to keep any written records... Low tech security is often underlooked, specialy by us techy people...
Kristoffer Nolgren
CC BY-SA 3.0
2012-06-05T17:03:39.677Z
@KristofferNolgren I've mentioned it elsewhere but I use a combination of actual entropy and remembered entropy for my keys. I have a set of dog tags with sets of random characters labeled 0 thru 9. I remember a PIN of variable length and use the PIN as a guide to concatenate the randomness together into longer randomness. My mental PIN is useless without the tags, the tags are useless without the PIN.
David Perry
CC BY-SA 3.0
2012-06-05T19:15:21.950Z
I've decided to write my key on a enchanted staff and hide it in various parts throughout the northern wildlands...
Kristoffer Nolgren
CC BY-SA 3.0
2011-09-15T14:54:54.753Z
2011-09-15T17:10:14.617Z
2011-09-15T17:10:14.617Z
David Perry
<p>I would like to save some of my bitcoins on a piece of paper with QR code printed on it. What would be the easiest way to do it without using Mt Gox. or similar. Just bitcoins (I'm not afraid of some programming if it's needed).</p>

<paper-wallet>
How to save bitcoins as paper?
Reed
# How to save bitcoins as paper?

(Asked by: username_0 on 2011-09-15)

I would like to save some of my bitcoins on a piece of paper with QR code printed on it. What would be the easiest way to do it without using Mt Gox. or similar. Just bitcoins (I'm not afraid of some programming if it's needed).

**Tags:** paper-wallet


---

## 8 answers

### Answer by username_12 on 2011-09-15. Score: 14 | Accepted answer

Currently the most popular method is to use something like [pywallet](https://github.com/joric/pywallet) to export your public/private keys and simply [generate](http://qrcode.kaywa.com/) a text QR code for them. Typically separate QR codes are generated for the public key and private key so that one code may be used to receive payment without giving away the private key which allows spending from the account. There are some alternatives, however, depending on your paper wallet needs.

Casascius' [Bitcoin Address Tool](https://github.com/casascius/Bitcoin-Address-Utility) is an excellent way of saving bitcoins in an easy to recover format. Though it doesn't yet support QR codes it does have the ability to generate a paper wallet from any passphrase. Once generated you could store the public and private keys as QR codes using any of a number of applications or online generators. Additionally, you could store the passphrase in a QR code and use it to recover your addresses at any time.

I specifically suggest this as opposed to simply exporting keys with pywallet and QR-ing them because this method would let you store more than one wallet address using a single QR code since any passphrase can generate up to 999 addresses deterministically in such a manner. Of course having a simple public key in QR code form also lets you scan the address with a smartphone or computer to send coins, so ultimately the solution depends on your usage.

> **Comments:**
> **username_13**: The short version of the underlying mechanism is this: You generate a random string of characters. You use the hash of those characters as the private key. You send the coins to the corresponding account address (hash of the corresponding private key). You print the string of characters on the paper.  
> **username_12**: Exactly. You could certainly print the string of characters on the paper in plaintext but I recommend *also* having a QR code - by doing BOTH you ensure that you have a computer-readable value for convenience but should the QR code become too degraded to scan, the text may still be readable by the human eye - especially if you use a passphrase instead of a bunch of random characters since even whole words obliterated may still be recoverable from a passphrase.  
> **username_14**: Can I select any string of characters? How do I use the bitcoin-application to select what "random string"s bitcoins I should access? What kind of hash is used (md5?)  
> **username_12**: @username_14 for any given string of characters x, there is a hash sha256(x) which almost certainly represents a valid private key, so yes you can select basically any string of characters, though you should treat that string like the world's most secure password since anyone guessing it gains access to your Bitcoin account. The functionality to generate a keypair in such a way is not built into the standard client but it can be done with the tools mentioned above, specifically Casascius' bitcoin Address Tool.  
> **username_14**: A cool but somewhat foolish idea is actually to use a poem etc as your key-string. If you use two of them, the password strength is probably strong enough. Also you don't have to keep any written records... Low tech security is often underlooked, specialy by us techy people...  
> **username_12**: @username_14 I've mentioned it elsewhere but I use a combination of actual entropy and remembered entropy for my keys. I have a set of dog tags with sets of random characters labeled 0 thru 9. I remember a PIN of variable length and use the PIN as a guide to concatenate the randomness together into longer randomness. My mental PIN is useless without the tags, the tags are useless without the PIN.  
> **username_14**: I've decided to write my key on a enchanted staff and hide it in various parts throughout the northern wildlands...  

---

### Answer by username_1 on 2011-09-18. Score: 7

Use [bitaddress.org](http://www.bitaddress.org/). It is a single HTML file so you can save it and generate addresses offline for extra security.


---

### Answer by username_2 on 2011-09-18. Score: 3

For a PDF wallet give [StrongCoin.com](http://strongcoin.com) a try. The PDF wallet will have your private keys encrypted (AES 256bit) with a pass-phrase you supply.

The encryption is done with JavaScript on the client side so your private keys are not exposed to the servers.


---

### Answer by username_3 on 2015-06-21. Score: 3

**My favorite method:**

* grab out a old/unused pc/mac
* install a linux over usb (maybe [Talis](https://tails.boum.org/index.de.html)) (make sure your USB stick is clean!)
* download a recent version of bitcoin-core (check hash, verify gitian signatures)
* copy bitcoin-core over usb to your offline machine
* start `./bitcoind`
* `./bitcoin-cli getnewaddress` (gives you a new public key)
* `./bitcoin-cli dumpprivatekey` (gives you the corresponding private key)
* print or write down both strings (address can be recreated from private key, but print it anyhow)
* verify the printed or written down strings
* try to delete printers cache (power off, reset)

**Now you could delete/format the pc/mac.**
But maybe it's worth keeping your new offline computer to generate new addresses or sign transaction in a "cold space/wallet".

> **Comments:**
> **username_4**: I have tried to print a paper wallet before, but after print came out. No QR code is printed on it. QR code boxes of both public and private keys are blank.  
> **username_3**: Better use WIF private keys instead of a QR Code.  
> **username_5**: Can you do the 12 words type key back up using this?  
> **username_6**: I think this is highly inadvisable. Unless you really know what you're doing, this will cause you to lose money through change addresses not being part of your paper wallet.  

---

### Answer by username_7 on 2011-09-15. Score: 2

An alternative is to buy [BitBills](http://www.bitbills.com/how.html) or something similar. That is much safer (because the key is not visible unless you break the bill) and can also be used as "cash" (you can give it to someone).


---

### Answer by username_8 on 2013-09-28. Score: 2

You don't want to "save" an existing address as a paper wallet, and instead you want to create (securely) an address (e.g., using [BitAddress](http://bitaddress.org)) and then make a payment that spends your coins to that address.


---

### Answer by username_9 on 2013-12-04. Score: 2

I read all of your answers, and I couldn't help wondering... whats wrong with writing down the actual private keys on a piece of paper?

What I did was following: I ran **listunspent** in the console first, to obtain the list of addresses worth safeguarding. Then I ran **dumpprivkey** for each and every address. I printed out what I got... did I do anything wrong?

To optimize the whole process, I could do a payment to myself to a fresh address of mine, to transfer everything I got to that address. After necessary confirmations, **listunspent** would retrieve only one address, wouldn't it?

Call it *a poor man paper wallet*, but this is pretty simple and straightforward, isn't it?

> **Comments:**
> **username_10**: What's wrong is that if you make a mistake you won't be able to spend your coins. What's even worse is that you won't learn you made a mistake until you go to spend your coins i.e. in the distant future. So in the meantime you'll be living your life and spending money with this mistaken belief that you have this stash of coins saved up that you can use should you ever need to.  
> **username_9**: What possible mistake I can do?  
> **username_10**: If you copy a character or two incorrectly for example. There are like 50+ characters in a privkey and if you make a mistake and get one or two wrong it is basically useless.  

---

### Answer by username_11 on 2013-09-06. Score: 0

Bitcoin Armoury is the best thing out there for this.

![enter image description here](https://i.sstatic.net/Ge3sd.png)

* What you want to do is create a new wallet with armoury, create a receiving address and send your BTC there.
* The best thing is you do not need to even be connected to the network, synchronized or anything. Armoury can run offline in the dungeons far underneath the earth (like your cellar :) )
* You then create a paper backup and print it out 2 or three times. Go and store it in your bank, in your important documents and at your mums house.
* Delete armoury. (Yes, but make sure you have your paper backups stored safely!)

Your coins will hang in limbo (on the network) without any transaction history or block chain tracking. COmpletely anonymous and unclaimed.

Now- You might feel like you just threw your coins into thin air and have this uneasy feeling of you will never get your coins back! I know I did. So this is what I did.

*I followed the whole process I mentioned above. Created a test wallet. Went to another computer somewhere else and did the same, except I imported the wallet from the paper backup. SYnchronised to the bitcoin network. Viola - The coins appeared in the transaction blocks and in my wallet ready to spend*

* It is also good for managing many online wallets at the same time. One for savings, possibly donations from your websites or blogs, and a personal one, and even offline unsynchronized for the long term anonymous storing of coins.

*As long as the bitcoin network will be running you will never lose offline transactions. Just make sure to keep your paper backup in atleast 3 secure seperate place- and no. Do not store it on picasa albums or gdrive.. keep it offline in a bank, locker and at your nans house under the bed, laminate it, put it in a box and bury it in your back yard next to the tree house.*


---

