As the number of transactions in the bitcoin network grows, the number of addresses with bitcoin will also grow. Is it possible for someone to “scavenge” for bitcoin by generating random key pairs and checking if the derived bitcoin address has any coins ? Is this likely to be profitable at any time in the future? Even if the profitability of this attack is low, it could impact confidence in the bitcoin network, if a few bitcoin were stolen in this manner.
Is it possible for someone to “scavenge” for bitcoin by generating random key pairs and checking if the derived bitcoin address has any coins ?
Is this likely to be profitable at any time in the future?
The number of possible addresses is extremely massive, much much too large for the human brain to comprehend.
For starters, there are 2^160 possible P2PKH addresses. Then there are 2^160 possible P2SH addresses. There are also 2^160 possible P2WPKH addresses and 2^256 P2WSH addresses. This means that the current total address space is 3(2^160)+2^256. The probability that you would randomly choose generate an address that has Bitcoin associated with it is so small that it is basically zero.
If we were to assume that 100 billion addresses have Bitcoin associated with them or will be in the future (that's an extremely generous estimate), then the probability that you would be able to find one of those is 8.636 × 10^-67. This probability is so small and so unlikely that it will never be profitable or have any probability of an address collision ever occurring.
The number of BIP39 addresses is close to 2^132. The current utxo set size is close to 60 mill. The number of trials required to encounter any one used address is 2^132/60e6 =9e31 trials. With current hashrate it would find bitcoin in 12.4 trillion seconds ~ 400 years to find non-empty address if the hashrate could be diverted to lookup the utxo set.