7

From reading previous articles I understand that you can receive bitcoins to an address even if your wallet is in cold storage because the bitcoins sent to this address is recorded by someone on the block chain. Is this correct? and who is this someone?

Now If I have bitcoins stored in an offline laptop (I believe this is called cold storage) is it possible I can create some sort of QR code with my offline laptop and just have my mobile Android bitcoin wallet snap the QR code and wallah the bitcoins are transferred from cold storage to hot? Do I also need to enter my private key to enable this?

3
  • 6
    What you have to understand is that bitcoins only exist in the blockchain. They do not exist in your wallet, either online or offline. All that contains is your public and private keys that allow you to make transactions on the blockchain. You do not transfer bitcoins anywhere when you move them to cold storage, they still only exist as transactions on the blockchain. The wallet cold, or hot, only contains the keys that let you authorize transactions on the blockchain to "spend" those coins.
    – user3742
    Commented Apr 14, 2014 at 10:50
  • Thanks for that, still trying to build my fundamental knowledge so that does help unconfuse me! One more question if you have time, can I authorise transactions on the block chain from my private keys stored in a cold wallet via a hot wallet that is connected/online to the block chain? Thanks again
    – Vinny
    Commented Apr 14, 2014 at 10:55
  • 4
    You can generate a signed transaction on an offline machine as long as it knows what to sign and has the private key. The tx can then be moved to an internet connected machine for submission. The problem is the "know what to sign" bit, a Bitcoin transaction references the output of a previous transaction so that information would need to be fed to the cold wallet. Common practice is to create a new cold storage key and import the old key(s) into a regular wallet where the funds are immediately sent from the old cold address(es) to where they are need and the change to the new cold address.
    – dchapes
    Commented Apr 14, 2014 at 13:08

3 Answers 3

7

Every bitcoin and bitcoin transaction is stored in the blockchain which is online, distributed and known by every full bitcoin node.

What you have on your pc are private keys. As long as you have this private key, you can sign any transaction which matches the corresponding public key.

An offline, or cold-wallet is a wallet that is not connected to the internet, so nobody can ever figure out your private keys by hacking you - the keys aren't connected to the internet.

Spending coins is basically signing (with your private key) that you wish to yield the control of your coins to someone else.

To sign this message, you will usually need a pc which is online to create the message to sign, and has a copy of the private key. It also needs to be online to send that signed message.

So unless you have a way to transfer the message to sign to and from a completly offline computer, you will always have to bring your wallet online to spend your coins...

1
  • Thanks Peter that was a very logical and concise explanations, thanks
    – Vinny
    Commented Apr 14, 2014 at 22:10
5

The system you describe is similar to the way Armory suggests you use it. You can sign a transaction offline, then transfer that signature to an online computer and broadcast it. Your private key has never been on an internet-connected computer, but your transaction has.

That said, be very careful spending from a cold storage address. There are many possible pitfalls that all have to do with the way the network/clients handle "change". Generally you'd be better off sweeping the balance into another address, doing what you want with it, and then using a different cold storage address to protect your funds again. If you choose to use the first method, I'd suggest you read more about how change is handled.

0

'Spending' doesn't have to involve signing.

If your sole copy of a key is on a piece of paper you could 'spend' it by giving it to someone else. They'd probably want to secure it by signing it to a new address before you regenerate the key using your master key, but in a trust-based transaction you could call it spending.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.