Перейти к публикации
polym0rph

Утилита для получения монет форков

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

Проблема: Сейчас появляется много форков, котоыре используют немного видоизмененный Bitcoin Core по сути, по крайней мере формат wallet'а тот же.
Пользователям, у которых много адресов, экспортировать и импортировать ключи запарно, многие ради получения форка закидывают свои монеты на биржи, чтобы потом оттуда снять. Просто подсунуть кошелек не получится, если есть расходные транзакции, ресинки и ресканы не помогут.

 

Решение: Предлагаю написать утилиту, которая из wallet.dat удаляет расходные транзакции. Тогда валлет можно подсунуть в кошелек форка, он при рескане расчитает правильн обалансы и можно будет использовать монеты форка.

 

Предложение: Я могу оплатить разработку этой утилиты, после чего она будет выложена с сорцами в открытый доступ. Мне нужен девелопер для этого. Есть желающие взяться за эту работу? Или может подскажете, к кому обратиться?

_______________

UPD:  В результате обсуждений пришли к выводам, что можно обойтись штатными средствами, подробности экспериментов идут начиная с этого поста.

Поделиться сообщением


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

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

Поделиться сообщением


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

@Socket32 Да. Это хороший способ. Но есть те, кто поздно о форке узнал, и из основной сети монеты потратил после форка не сделав бэкап, HODL'еры, которые только в основной сети перекидывают монеты и т.п.

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

 

Поделиться сообщением


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

Какая разница, битки то он трогает в основной сети битка, а не форка, так что они (клоны/форки) там в целости лежат и ждут.

А есть какие форки битка за  год были? А то может пара лишних лямов валяется без хозных 🙂

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
6 минут назад, Socket32 сказал:

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

Более того, я бы сказал это обязательное условие, чтобы сохранить BTC от сомнительных левых сборок кошельков левых форков.

Поделиться сообщением


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

@e46btc

Это да, поэтому и влом возиться было, 220гиг ради ничего и вероятности трояна

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
6 минут назад, Socket32 сказал:

Какая разница, битки то он трогает в основной сети битка, а не форка, так что они (клоны/форки) там в целости лежат и ждут.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
9 минут назад, polym0rph сказал:

Но есть те, кто поздно о форке узнал, и из основной сети монеты потратил после форка не сделав бэкап, HODL'еры, которые только в основной сети перекидывают монеты и т.п. 

Я конечно не отвечу на оригинальный вопрос, но с этой задачей справится пара команд dumpwallet/importwallet без рисков использования стороннего софта, пусть даже с открытым исходным кодом, даже если идея вырезания транзакций кажется классной.   Не нужно будет перебирать все ключи по очереди.

 

 

Поделиться сообщением


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

@polym0rph

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

Можно и проверить, какая называется форк ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
4 минуты назад, e46btc сказал:

с этой задачей справится пара команд dumpwallet/importwallet без рисков использования стороннего софта,

О, это ценно, надо проверить, я чего-то не догадался.

 

1 минуту назад, Socket32 сказал:

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

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

Поделиться сообщением


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

@polym0rph Таким грубым методом делать нельзя, структура, формат кошелька и ключей другой. Нужно только экспорт/импорт.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
14 минут назад, polym0rph сказал:

О, это ценно, надо проверить, я чего-то не догадался.

 

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

 

У меня также вроде было но запуск с -reindex -rescan вроде помогал убрать не правильные транзы 

Поделиться сообщением


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

В принципе, утилита, расковыривающая wallet.dat была бы полезна и в других случаях...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
28 минут назад, polym0rph сказал:

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

 

В биткойнообразных кошельках для этого имеется специальный параметр запуска:

-zapwallettxes=<mode> 	Delete all wallet transactions and only recover those parts of the blockchain through -rescan on startup (1 = keep tx meta data e.g. account owner and payment request information, 2 = drop tx meta data)

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
7 часов назад, polym0rph сказал:

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

 

По идее это решается простым ресканом блокчейна, транзакции которых нет в блокчейне кошелек сам грохнет по умолчанию.

Поделиться сообщением


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

Есть вот такая хреновина с открытым кодом.Сам не пробовал.

https://github.com/ymgve/bitcoin_fork_claimer

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
31 минуту назад, Tomcat_MkII сказал:

По идее это решается простым ресканом блокчейна, транзакции которых нет в блокчейне кошелек сам грохнет по умолчанию.

Простым ресканом точно не решается. А вот -reindex -rescan  может и поможет. Сейчас для теста запустил. Также -zapwallettxes=2 чуть позже проверю на том же тестовом кошельке.

 

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

Есть вот такая хреновина с открытым кодом.Сам не пробовал.

https://github.com/ymgve/bitcoin_fork_claimer

Интересная штука. И список форков там кстати полезен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
9 часов назад, Socket32 сказал:

А есть какие форки битка за  год были? А то может пара лишних лямов валяется без хозных 🙂

Обсуждали как-то https://forum.bits.media/index.php?/topic/60654-все-форки-битка-до-января

 

Викиссылка со второй страницы ведет на "кастрированный" текст. Сейчас процитирую в ту тему один свой более поздний пост...

Изменено пользователем Helber

Поделиться сообщением


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

Небольшой отчет по результатам тестов.

Был взят wallet.dat из Bitcoin Core, помещен в папку с блокчейном Bitcoin ABC. В этом кошельке были потраченные в сети Bitcoin средства, но посколькуони ледали там до форка, то их также можно потратить в сети Bitcoin Cash. По-умолчанию в кошельке Bitcoin ABC они не отображались.

На этом валлете Bitcoin ABC с самого начала выдавал ошибку

Error reading wallet.dat! All keys read correctly, but transaction data address book entries might be missing or incorrect

1. -reindex -rescan не помог. Занял около 20 часов, с учетом нахождения кошелька на SSD.
2. -zapwallettxes=1 и -zapwallettxes=2  не помогли, вылезала каждый раз ошибка

Error loading wallet.dat: Wallet corrupted

При том без этих параметров кошелек загружался, хоть и с небольшой руганью на записи в адресной книге.

3. dumpwallet - importwallet отработали штатно, загрузил ключи в чистый wallet.dat и все увидилось.

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

 

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

Поделиться сообщением


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

На более старых кошельках -zapwallettxes=2  отрабатывает замечательно. Пока что это лучший способ и могу в первую очередь рекомендовать его пробовать. Не требуется светить пароли и приватные ключи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
12.11.2018 в 15:48, polym0rph сказал:

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

Тут был прикол на Йентене:

https://forum.bits.media/index.php?/topic/61231-ytn-cpu-mining-yenten-v131-yescryptr16/&amp;page=315

При переносе валет.дат с клиента 2.0.1 на 1.3.1 самопроизвольно повторилась транзакция которая имела место на 2.0.1

https://forum.bits.media/index.php?/topic/61231-ytn-cpu-mining-yenten-v131-yescryptr16/&amp;do=findComment&amp;comment=1676666

Блокэксплорер это подтверждает.

 

Второй случай:

https://forum.bits.media/index.php?/topic/61231-ytn-cpu-mining-yenten-v131-yescryptr16/&amp;do=findComment&amp;comment=1676760

Поделиться сообщением


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

Создайте аккаунт или войдите в него для комментирования

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

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.

    YoBit.Net
×