<p>The problem here is that creating a transaction requires 2 things:</p>

<ol>
<li>The utxo (unspent transaction output) set of your addresses. This is basically a record of all bitcoins sent to the addresses in your <code>wallet.dat</code> file.</li>
<li>The private keys to actually sign the transaction.</li>
</ol>

<p>Generally, when you use an offline computer to store the private keys, you will be using an internet connected computer to do (1) and the offline computer to do (2).</p>

<p>Unfortunately, the bitcoin-qt client does not have the concept of watching-only wallets for (1) which would be required for you to create such a transaction. That said, there are some ways you can achieve this, but it's definitely not going to be easy.</p>

<p>Here are some options:</p>

<ol>
<li>Manually grab the utxo set for your addresses using a block explorer (like blockchain.info), then manually create a transaction spending those bitcoins to the paper wallet address, then sign the transaction on your offline computer and finally broadcast the transaction online.</li>
<li>Download the blockchain on an online computer (about 50 gb), then transfer that over to your offline computer, then create the transaction you need on your offline computer and broadcast the transaction online.</li>
<li>Dump the private keys of the addresses on your offline computer and create paper wallets of the private keys that have any bitcoins in them. (This can be achieved using something like bitcoinpaperwallet.com and entering your own private key)</li>
</ol>

<p>1 is going to require some programming experience. 2 is going to take a while to download the blockchain and transfer it. 3 is probably your easiest option depending on the number of addresses you have. The nice thing about bitcoinpaperwallet.com is that you can download the source and use it on your offline computer.</p>

CC BY-SA 3.0
2016-06-04T14:06:07.763Z
2016-06-04T14:06:07.763Z
Jimmy Song
<p>If you use an old/unused computer and install Talis/Ubuntu on it (over USB stick after verified the SHA256 sum) and never connect it to the internet, I would count this as a "cold storage".</p>

<p>You could install Bitcoin-Core on that computer (over USB stick after verifying the SHA256 sum) and use it without downloading the blockchain to dump your private keys to a txt file and print it.</p>

<p>Dumping the wallet (private keys) is possible over the "Console" in Bitcoin-Qt or over RPC (with the bitcoin-cli command line tool).
You need to call <code>dumpwallet &lt;filename&gt;</code></p>

<p>Also consider using a hardware wallet.</p>

CC BY-SA 3.0
2016-06-04T13:58:08.637Z
2016-06-04T13:58:08.637Z
Jonas Schnelli
<p>A similar question <a href="https://bitcoin.stackexchange.com/questions/30082/how-to-securly-move-bitcoins-from-a-wallet-dat-file-to-a-paper-wallet">was asked by me in 2014</a>, but I did not find the answer satisfactory back then, and I hope some things changed since in the last two or so years.</p>

<p>I have a <code>wallet.dat</code> file with some bitcoins on it. I would like to move the bitcoins on the file to an offline paper wallet.</p>

<p><strong>Is there a convenient way to make the transaction without connecting the computer with the <code>wallet.dat</code> file to the internet?</strong></p>

<wallet.dat><coldstorage><offline><offline-transactions>
Safely transferring bitcoins from wallet.dat to cold storage
Adam Matan
# Safely transferring bitcoins from wallet.dat to cold storage

(Asked by: username_0 on 2016-06-04)

A similar question [was asked by me in 2014](https://bitcoin.stackexchange.com/questions/30082/how-to-securly-move-bitcoins-from-a-wallet-dat-file-to-a-paper-wallet), but I did not find the answer satisfactory back then, and I hope some things changed since in the last two or so years.

I have a `wallet.dat` file with some bitcoins on it. I would like to move the bitcoins on the file to an offline paper wallet.

**Is there a convenient way to make the transaction without connecting the computer with the `wallet.dat` file to the internet?**

**Tags:** wallet.dat, coldstorage, offline, offline-transactions


---

## 2 answers

### Answer by username_1 on 2016-06-04. Score: 1

The problem here is that creating a transaction requires 2 things:

1. The utxo (unspent transaction output) set of your addresses. This is basically a record of all bitcoins sent to the addresses in your `wallet.dat` file.
2. The private keys to actually sign the transaction.

Generally, when you use an offline computer to store the private keys, you will be using an internet connected computer to do (1) and the offline computer to do (2).

Unfortunately, the bitcoin-qt client does not have the concept of watching-only wallets for (1) which would be required for you to create such a transaction. That said, there are some ways you can achieve this, but it's definitely not going to be easy.

Here are some options:

1. Manually grab the utxo set for your addresses using a block explorer (like blockchain.info), then manually create a transaction spending those bitcoins to the paper wallet address, then sign the transaction on your offline computer and finally broadcast the transaction online.
2. Download the blockchain on an online computer (about 50 gb), then transfer that over to your offline computer, then create the transaction you need on your offline computer and broadcast the transaction online.
3. Dump the private keys of the addresses on your offline computer and create paper wallets of the private keys that have any bitcoins in them. (This can be achieved using something like bitcoinpaperwallet.com and entering your own private key)

1 is going to require some programming experience. 2 is going to take a while to download the blockchain and transfer it. 3 is probably your easiest option depending on the number of addresses you have. The nice thing about bitcoinpaperwallet.com is that you can download the source and use it on your offline computer.


---

### Answer by username_2 on 2016-06-04. Score: 0

If you use an old/unused computer and install Talis/Ubuntu on it (over USB stick after verified the SHA256 sum) and never connect it to the internet, I would count this as a "cold storage".

You could install Bitcoin-Core on that computer (over USB stick after verifying the SHA256 sum) and use it without downloading the blockchain to dump your private keys to a txt file and print it.

Dumping the wallet (private keys) is possible over the "Console" in Bitcoin-Qt or over RPC (with the bitcoin-cli command line tool).
You need to call `dumpwallet <filename>`

Also consider using a hardware wallet.


---

