Реальная история.
Давайте начнем с хэш RIPEMD-160 в центре этого изображения:
https://en.bitcoin.it/wiki/File:PubKeyToAddr.pngТаким образом, мы имеем 160 бит или 20 байт.
Что 2 ^ 160 возможных комбинаций.
Теперь мы добавим "1" с контрольной суммой спереди и 4 байта (поэтому не каждая комбинация действует),
что дает нам 25 байт. В соответствии с
http://en.wikipedia.org/wiki/Base64(Где мы предполагаем, что Base58 Bitcoin приводит к примерно тем же количеством символов, как делает Base64)
мы получаем четыре трети 25 байт, что составляет к чему-то между 33 и 34 байта. Это наш Bitcoin адрес.
Поэтому две наши маленькие уравнения:
- У нас есть 2 ^ (п * 8) действительные комбинации.
- Мы получаем (п + 5) / 3 * 4 символов для адреса Bitcoin.
Заменить п с 20 для неограниченного Bitcoin адресного пространства.
Теперь вы хотите взять, например, 6 символов из уравнения, потому что вы выбираете тщеславия адрес, как это:
1aaaaaaX298sdf3kjh394jh499o38te36a
Таким образом, мы не имеем 33, но 27 переменных символов:
(П + 5) / 3 * 4 = 27,
и п = 15 приближенно.
Результат: Вы в конечном итоге с 2 ^ (15 * 8) допустимых комбинаций вместо 2 ^ (20 * 8) полного Bitcoin адресного пространства.
Таким образом, грубое приближение:
2 ^ (((33-х) / 4 * 3 - 5) * 8)
где х это количество символов тщеславия (6 в приведенном выше примере).