3 ms·
But the values are generally generated pseudo randomly by machine. This seems similar to the birthday problem, where the odds of encountering a value in a given
by grumple 5y ago
But the values are generally generated pseudo randomly by machine. This seems similar to the birthday problem, where the odds of encountering a value in a given range is higher than you'd expect.
- bspammer 5y agoThe birthday problem means that the number of values you have to choose to have a 50% chance of a collision scales approximately with the square root of the size of the space. [0] 2^(256/2) is way, way bigger than the number of used bitcoin addresses, which is about 33 million according to this csv [1]. [0] https://en.wikipedia.org/wiki/Birthday_attack#Mathematics https://en.wikipedia.org/wiki/Birthday_attack#Mathematics [1] https://bitkeys.work/download.php https://bitkeys.work/download.php
- FabHK 5y ago1. yes, generally and ideally the private key is generated pseudo randomly. But at the beginning or for testing, people might have manually picked a private key. 2. the birthday problem basically halves the exponent security wise. The rule of thumb: If you have N possible outcomes, then after around sqrt(N) guesses the probability of a collision approaches 0.5. So, for birthdays, it's 365 outcomes, so with 19 or 20 people your risk of collision already approaches a half. For BTC private keys, there are 2^256 possible, so with 2^128 guesses you'd approach a likely collision. Fortunately, that's still 1e38, so if you check 1e10 per second, you'd still need 1e20 years to get there.