7

(This question applies to private wallets, stored in a local computer. Not so much for online wallets, which are supposed to always be connected to the internet)

Let's say I have a wallet with several addresses. Somebody (maybe even myself) makes a transfer to one of my addresses. My impression is that my bitcoin client (the one managing the wallet to which the address is associated) must be running and connected to the internet in order for this transfer to be executed.

I say this because, since a wallet has real money, the bitcoins (those unique bitcoins that have been transferred) must arrive to the wallet somehow. But if my wallet is not connected, this is impossible.

So here my questions:

  • what happens if the wallet is not connected to the internet? Where are the bitcoins? Are they in a "bitcoin limbo" until they are transferred to my wallet?
  • How is this managed from the blockchain point of view? Are transfers marked as "done" when the money has been transferred to a wallet?
  • is there any kind of timeout? What happens if I do not connect my client for a day / month / year / ever? Are the bitcoins lost, or is the transfer cancelled?

Maybe I am misunderstanding what an address / wallet really represents.

4 Answers 4

7

You can receive payments without being online.

Your wallet's purpose is mainly to store your private keys which enable you to spend balances associated with corresponding addresses. The actual bitcoin balances are stored in the blockchain ("the public ledger") which is constantly being updated by the bitcoin network even when you are offline. When you open your wallet, it will catch up to the current status by validating any blocks that occurred while you were offline. The balance shown in your wallet only represents a snapshot of the latest information available to your wallet (which may lag behind if you aren't synchronized, or may be accurate, if you are currently in sync with the network).

So, Bitcoin payments will arrive just fine with you being offline, you just probably won't be aware of it until later.

2
  • I start to understand this. One thing surprises me: "the balances are stored in the blockchain". You mean that the last blockchain page has the balances for all bitcoin addresses? That does not make sense (size)! Or is the balance for a given address to be found somewhere in the blockchain? To know the balance of a given address, does the network look for it crawling the whole blockchain? This seems really impractical: since the blockchain is growing steadily, at some point it will become too expensive computationally to look for the balance of a given address. What am I missing here?
    – blueFast
    Dec 6, 2013 at 15:25
  • The balance for any given address is found by crawling the complete blockchain. Thin clients only retain unspent outputs, diminishing the total size of the currently available balances to about 100MB. Full clients actually validate and keep every block from the genesis block when synchronizing. I assume that the data structure has some sort of optimization to find unspent inputs in that as well.
    – Murch
    Dec 6, 2013 at 19:25
7

No, the transactions are weaved into the blockchain by the p2p network of miners. That's what counts. Your address is only a keypair that proves you ownership. The concept of cold storage is exactly the idea to not connect to the internet so nobody can steal your coins (or rather, the key to access your wallet).

3
  • Do you mean that the blockchain has a ledger of all addresses, with the current balance? I do not think this is actually doable, so I must be misunderstanding something. Also: what does it mean "if you lose your wallet, you lose your coins" in this context? Since what you are saying is that my wallet has no coins, but just keypairs for all addresses that I have in that wallet, that means that I can make as many copies of my wallet as I want to, since all of them will have the same keypair, right? That also means nothing is stored in the wallet (only the keypairs of all addresses)
    – blueFast
    Dec 6, 2013 at 11:37
  • you don't need a wallet at all to receive transactions. to spend them, yes, to receive them, no. as @Roo says, the miners include the transactions into the blockchain and you can check this on blockchain.info/address/[enter your bitcoin address here]. if you lose your wallet (or more specifically your private key) then you cannot spend the coins which have been sent to your address. Dec 6, 2013 at 12:15
  • 2
    @gonvaled He means exactly that and this IS doable. THe blockchain IS a ledger of all addresses that were ever used, all transactions that ever were processed. If you loose your wallet you can not get the keys back to access your bitcoin.
    – TomTom
    Dec 6, 2013 at 12:36
1

You can certainly receive payments without being online. But you must be online to send payments.

I can make as many copies of my wallet as I want to, since all of them will have the same keypair, right?

It's less a matter of making copies of your wallet as it is a matter of creating new wallets and storing the same keypairs in them. You can have as many wallets as you want to bother to create, and keep in those wallets the same addresses that you are using. But many people just let their wallet(s) create a new public address for each new transaction they make. Those people may or may not bother to learn of and keep a copy of each new public address's private key. Where that is the case, to lose your wallet's password is indeed to lose your coins. Since you don't know the private keys that your wallet created for each transaction you made, you cannot withdraw any bitcoins out of those addresses. That's why backing up your wallet is so important. But if you make a point of keeping your private keys in a safe place, you have that extra margin of safety because you can always generate a public address from a private key, but never the other way around,.

0

Ledger: It contain's the all the transaction of your own blockchain network.

Your wallet is your ledger file.

your wallet is always connected to blockchain network. whether you're in offline or online. You should be online when you connect to blockchain network.

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