Possible Duplicate:
What would happen if two public keys had the same Base58 hash?

A follow up from What happens if I mistype the address when making a payment?

Suppose I accidentally (or intentionally)send some money to a valid wallet address that no one owns currently. Now, at a later point in time, when someone creates an account which happen to have the same address to which I sent, will the wallet get those coins?

  • See this answer to understand the likelihood of this actually happening: bitcoin.stackexchange.com/a/3205/516 Commented Dec 20, 2012 at 20:18
  • No, that's not the spirit of this question. I was wondering how the "balance" is computed. For instance, suppose I send a few bitcoins to every valid key I generate. Then after a billion years, when the wallet is actually created, will the owner be able to spend those coins?
    – SparrowG
    Commented Dec 20, 2012 at 23:33
  • Could someone tell why the negative votes?
    – SparrowG
    Commented Dec 22, 2012 at 19:09
  • Though I didn't downvote it myself, it's probably because it's very similar to several other questions considering the implications of a hash collision. Commented Dec 22, 2012 at 19:54

1 Answer 1


Yes, it will.

To "receive" money one should have a private key corresponding to bitcoin address, nothing more. The keys do not bear any information related to their creation date.

Intrinsically, bitcoin protocol does not have such thing as "balance". Blockchain contains only the list of transactions. If you have correct keypair (with public key hashing to destination address) and the transaction output has not already been spent, then you can send this money somewhere. Your "balance" is just a sum of all transaction outputs you can spend. When importing new private key in original bitcoin client, it performs blockchain rescan to find out whether this new address has received any coins previously.

  • Is that scalable? Following from my comment in the question, in a more reasonable timeframe, say I send coins now and the address is created after billions of blocks. Will the entire blockchain be scanned?
    – SparrowG
    Commented Dec 20, 2012 at 23:36
  • 1
    @SparrowG By default it will (in importprivkey RPC there is a switch to disable scanning, since currently it takes ~2 minutes). Also, there is "ultraprune" version of client, which stores not entire blockchain but only the list of unspent tranaction outputs, which makes such scanning pretty fast.
    – aland
    Commented Dec 21, 2012 at 5:16

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