Изначально идея состояла в том, чтобы сгенерировать сид (и адрес кошелька) вообще без участия компа. Но оказалось, что на это уйдет уйма времени, часов этак 20. Поэтому пришлось упростить решение задачи.
Итак, нам понадобится:
1) Монетка
2) Чистая система, не подключенная к интернету, любой лайв дистрибутив линукса подойдет.
3) Список слов на любом из языков https://github.com/b...39-wordlists.md
Подкидываем монетку 256 раз и записываем результат (0 - орёл, 1 - решка или наоборот)
Записываем результат, отделяя каждые 11 бит, вот так:
00100101010 01000010010 11010011100 11000100100 11101000000
10000110110 00101001011 11110110010 11011011111 10000111110
00001011111 10001110010 00010001001 11000011001 11000111011
10010110011 01100000111 01100101101 111
На "хвост" из 3-х бит пока внимания не обращаем.
Переводим двоичные значения в десятичные с помощью калькулятора в холодной системе, или используя знания по информатике)
298 530 1692 1572 1856
1078 331 1970 1759 1086
95 1138 137 1561 1595
1203 775 813
Теперь берем список из 2048 слов и находим их по номеру, отсчет начинается от нуля, поэтому для числа 1162 мы ищем слово под номером 1163.
census drastic squeeze setup trend
man city wagon swim march
armor mixture bachelor segment shuffle
nose genius grant
Осталось определить последнее 24 слово. Вычисляется оно с помощью алгоритма SHA-256, собственно это и делает расчет вручную очень сложным.
В качестве входных данных мы берем полученное в самом начале число целиком (256 бит). Это в консоли делается, если кто не понял.
Результат выглядит так:
c716ada6e8ebd952598bb5622ccbd119620a9ad0ccbcf29ad55077a38603d61b
Из этой строчки нас интересуют два первых символа: c7
Переводим это число из шестнадцатеричной системы в двоичную: 11000111, и добавляем 3-хбитный "хвост" в начало этого числа: 11111000111
Переводим в десятичную систему: 1991
Последнее слово: wedding
При импорте сида в кошелек не забывайте добавлять парольную фразу для пущей безопасности. Да пребудет с вами Биткоин, друзья)