How unlikely is this? I mean if it is today considered highly unlikely, what will happen tomorrow when, say, some system could create not just 60M keys per second but 60MM keys per second (and check in real-time against existing addresses at that)? Wouldn't this render Bitcoin useless and worthless immediately? To me, it is always fishy when something is considered impossible, since impossible things have a tendency to actually happen one day...
It's hard to comprehend the full impact of statistics: it's not something you can "feel" being right. Rough estimate: it's less likely than a plane crashing on your head the moment you crash your car the day you won the lottery. And yet, people say: "but it is possible". "Very unlikely" just doesn't cut it
This image is often used to illustrate how unlikely it is:
Without checking the math, I'll quote this user:
Given your example of 1 billion users at 10 addresses each:
There are 2^160 or about 1,460,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 possible addresses
In your scenario, 1,000,000,000 people are using 10 addresses each for a total of 10,000,000,000 possible addresses
10,000,000,000 / 2^160 should yield the probability of a collision occurring
10,000,000,000 / 2^160 = 0.00000000000000000000000000000000000000684
So the chances of a collision occurring in your scenario are approximately 0.000000000000000000000000000000000000684%
See why we don't consider collisions an issue?
2^160 possible addresses
Do I understand correctly that not all private keys have a valid public key?
I ran this:
./vanitygen -i 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f 1g 1h 1i 1j 1k 1l 1m 1n 1o 1p 1q 1r 1s 1t 1u 1v 1w 1x 1y 1z -o tempfile.txt -q -k
for 11.345 seconds. It checks about 127 kkey/s, and found 5366 keys. That results in 473 keys/s being found, while 270 times more keys have been checked.