Перейти к содержанию

Seed-фраза / PrivateKey


bitbitbit777

Рекомендуемые сообщения

Заметил, что некоторые кошельки предлагают одну SEED, а создают несколько адресов. Например, кошелëк Electrum Андроид создаëт сразу 20 адресов + 10 адресов сдачи (все bc1q) и добавляет новые адреса по мере совершения транзакций. Скорее всего, похожая ситуация в Bitcoin Wallet. Как это работает? После битов SEED вставляются ещë n битов, перебирая которые, получаются 2^n приватных ключей и адресов? Если да, то чему равно n? Я замечал, что некоторые генераторы действительно позволяли делать адреса с названиями вроде "m/44h/0h/0h/0/0".

Ссылка на комментарий
Поделиться на другие сайты

16 минут назад, bitbitbit777 сказал:

Как это работает? После битов SEED вставляются ещë n битов, перебирая которые, получаются 2^n приватных ключей и адресов?

Выбираются разные пути деривации.

На основе одного и того же сида можно сгенерить миллиарды, если не триллионы пар ключ-адрес


 

16 минут назад, bitbitbit777 сказал:

Я замечал, что некоторые генераторы действительно позволяли делать адреса с названиями вроде "m/44h/0h/0h/0/0".

Это не названия, это пути деривации

 

https://iancoleman.io/bip39/

 

Сгенерите пустой сид и экспериментируйте

Изменено пользователем Helber
Ссылка на комментарий
Поделиться на другие сайты

Здравствуйте. Есть проект на GitHub или просто описание такой функции?

На вход: биты (байты) из файла или сам вводишь HEX или BIN число.

Функция берёт первые N бит, добавляет хеш и получает SEED-фразу из 24 слов (264 бита, я так понимаю), приватный ключ, публичный адрес. Для bc1q соответственно последовательность адресов и возвратных адресов.

Соответственно при одинаковом входе всегда одинаковый выход.

Больше ничего не надо.

Я понимаю, что есть проекты, генерирующие энтропию и делающие то же самое, но мне не это нужно.

Ссылка на комментарий
Поделиться на другие сайты

@bitbitbit777  Если интересно подробнее, стоит погуглить иерархически детерминированные кошельки, они же HD кошельки. В книге mastering ethereum Антонопулоса хорошо описано. Книга в свободном доступе гуглится.

Ссылка на комментарий
Поделиться на другие сайты

Это явно часть какого-то костыля, так что не думаю, что есть какое-то идеально подходящее решение. тем более непонятно, на каком языке оно нужно.

И в криптографии очень не любят костыли, тут следует быть очень осторожным, банальное уменьшение энтропии при генерации может потом привести к очень серьезным последствиям.

Ссылка на комментарий
Поделиться на другие сайты

элементарно, линейно рекурентный регистр. На входе N бит -  на выходе M (сколько угодно бит).

Выход превращаем в слова из известного списка. 

Стойкости - ноль

Ссылка на комментарий
Поделиться на другие сайты

14 часов назад, polym0rph сказал:

Это явно часть какого-то костыля, так что не думаю, что есть какое-то идеально подходящее решение. тем более непонятно, на каком языке оно нужно.

И в криптографии очень не любят костыли, тут следует быть очень осторожным, банальное уменьшение энтропии при генерации может потом привести к очень серьезным последствиям.

Энтропию я беру на себя.

Язык html или c++, но без груды нестандартных библиотек.

Вот примеры такие нашëл, они дают PrivateKey (WIF), которым можно подписывать транзакции, но не SEED.

https://secretscan.org/PrivateKeyWif

https://gist.github.com/cloverstd/dceb82565ca2f2de0e84680be267a5cc

https://www.ntcfinans.com.tr/visual-btc-generator.asp

 

Вот ещë примерно, что искал, только интересно что-то с github:

https://learnmeabitcoin.com/technical/mnemonic

Изменено пользователем bitbitbit777
Ссылка на комментарий
Поделиться на другие сайты

  • rammendo изменил название на Seed-фраза / PrivateKey

@bitbitbit777

PrivateKey не годится в такой постановке задачи. Из PrivateKey не сделать SEED. Это из SEED можно получить PrivateKey.

Так что тут раскуривать BIP39 и делать самому SEED

Ссылка на комментарий
Поделиться на другие сайты

6 часов назад, polym0rph сказал:

@bitbitbit777

PrivateKey не годится в такой постановке задачи. Из PrivateKey не сделать SEED. Это из SEED можно получить PrivateKey.

Так что тут раскуривать BIP39 и делать самому SEED

Да, я, наверное, имел ввиду не PrivateKey, а случайный набор 256 бит. Но уже разорался.

Ссылка на комментарий
Поделиться на другие сайты

20 минут назад, bitbitbit777 сказал:

Но уже разорался.

Сдержаннее надо быть!

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...