Чувак 32-битным случайным числом инициировал 256-бит (которые абсолютно предсказуемы, зная 32 бита исходного seed). Далее оставалось лишь перебрать по около 1-3 миллиона подсмещений от каждого из изначальных 4 миллиардов семян. И сравнить получившиеся адреса (из получившихся приватных ключей) с известными красивыми (vanity) адресами #ethereum.
Разбираю кейс дальше. Взял все свои нагенеренные на чёрный день адреса. Перебрал 4 миллиарада сидов. Короче, следующее: Генерируются 4 uint64. Реверсятся. Новое первое число растёт быстро (это foundId, я до 3.5 миллионов оффсеты нашёл), новое последнее число (round) растёт медленно, его значение в пределах 2-3 тысяч от начального. При этом числа, когда конвертятся в байты, превращаются в них по Big-Endian, не по Little-Endian. Вот у нас получается 256-битный (32-байтный) ключ от адреса. Таким образом два средних блока приватного ключа по 8 байт не трогаются вообще, они одинаковые для всех адресов с этого сида. Меняются только первый и последний блоки. А из других двух меняются фактически 3 байта + 2 байт. 5 байт уникальные, остальные неуникальные.