Красивый ищет сайт Майк и большое доменное имя
Вы можете уточнить проблемы с хаотичностью для нас не-вундеркиндов? В чем проблема с тем, как другие "адрес генераторов" генерировать адреса?
Является ли это риск для безопасности?
Да, существует серьезная проблема безопасности при генерации Bitcoin адресов с использованием псевдослучайных чисел.
За короткий (техническим) ответ: псевдослучайные числа имеют очень малую энтропию (равный размеру семени) и могут быть легко угадываются.
Дольше сложный ответ:
Для того, чтобы убедиться, что ваш BTC безопасны вы должны хранить их на адрес созданного с сильно случайным ключом.
Более случайный секретный ключ - тем труднее угадать его.
Для того, чтобы сделать его наиболее безопасным - он должен быть генерировать от действительно случайной последовательности битов.
Случайные числа, созданные внутри компьютера не очень случайны и не должны использоваться в программах с критической безопасностью (см:
https://en.wikipedia.org/wiki/Pseudorandomness#Cryptography).
Случайные числа внутри компьютера создаются с помощью простых математических уравнений, которые обеспечивают последовательность чисел, которая выглядит случайным, но может быть легко догадаться, просто глядя на один или два числа из последовательности (обычно используется механизм:
https://en.wikipedia.org/wiki/Linear_congruential_generator).
Давайте сделаем упрощенный пример того, как создаются эти последовательности псевдослучайных чисел:
Давайте попробуем сделать последовательность псевдослучайных чисел однозначного (обычно последовательности имеют 13-значные номера или больше):
Начнем с х = 5 и использование формулы next_x = (х * 7 + 3)% 10. (10% означает: "взять последнюю цифру")
Первым номером в последовательности выбрана равной 5, во-вторых, то:
(5 * 7 + 3)% 10 = 8. В-третьих,
(8 * 7 + 3)% 10 = 9. Следующий цифра:
(9 * 7 + 3)% 10 = 6, и так далее (она начинает повторяться).
Последовательность 5, 8, 9, 6 вид, как будто это 4 случайные цифры, но если вы знаете формулу, как они создаются (и формулы хорошо известны), все, что вам нужно знать, что вы начали с 5, остальные могут быть вычислены ,
Таким образом, если вы используете числа из последовательности псевдослучайных чисел, даже если последовательность длиной milliion цифры, вы просто должны знать одну или две цифры, чтобы быть в состоянии вычислить все из них.
Так что, если вы создаете 1000 Bitcoin адреса в один раз на вашем компьютере, кто-то может угадать несколько цифр и быть в состоянии получить биткойны от всех 1000 адресов.
Вот почему псевдослучайные числа должны быть заменены случайными числами при создании безопасных адресов, но нормальный компьютер не есть способ катиться реальные костьми внутри - так хаотичность должна быть обеспечена от людей (например, случайным образом качают мышь).