Bitcoin Forum
April 30, 2024, 01:21:55 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 3 4 5 »  All
  Print  
Author Topic: Как протолкнуть зависшую транзакцию  (Read 11830 times)
Vadi2323 (OP)
Legendary
*
Offline Offline

Activity: 2044
Merit: 1231


View Profile
May 06, 2016, 05:39:32 AM
Last edit: January 16, 2018, 11:19:34 PM by Vadi2323
 #1

Хочу предложить способ проталкивания транзакции, которую не хотят подтверждать майнеры из-за низкой комиссии. Способ проверялся на кошельке Bitcoin Core v. 0.12.1. Способ не подойдёт для лайт-режима, т. к. потребует полного блокчейна на компьютере. Впрочем представленные в Интернете способы тоже требуют полного блокчейна.

Как известно, в текущей версии кошелька нет возможности отправить транзакцию с потраченного входа и в случае зависания приходится танцевать с бубном, как описано, например, здесь: https://habrahabr.ru/post/209778/

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

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

На всякий случай для тех, кто не знает - файл wallet.dat находится обычно тут: C:\Users\ВашеИмяНаКомпьютере\AppData\Roaming\Bitcoin



Обновление

В новой версии кошелька появилась галочка "Request Replace-By-Fee". Не забывайте ставить её, если хотите подстраховаться. Без этого реквизита майнеры могут не принять повторную трату и таким способом "протолкнуть" транзакцию может не получиться.
1714483315
Hero Member
*
Offline Offline

Posts: 1714483315

View Profile Personal Message (Offline)

Ignore
1714483315
Reply with quote  #2

1714483315
Report to moderator
1714483315
Hero Member
*
Offline Offline

Posts: 1714483315

View Profile Personal Message (Offline)

Ignore
1714483315
Reply with quote  #2

1714483315
Report to moderator
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714483315
Hero Member
*
Offline Offline

Posts: 1714483315

View Profile Personal Message (Offline)

Ignore
1714483315
Reply with quote  #2

1714483315
Report to moderator
1714483315
Hero Member
*
Offline Offline

Posts: 1714483315

View Profile Personal Message (Offline)

Ignore
1714483315
Reply with quote  #2

1714483315
Report to moderator
in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
May 06, 2016, 06:33:27 AM
 #2

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

Нужно убедиться, что в новой транзакции расходуется тот же выход (или хотя бы один из выходов) что и в первой транзакции. Иначе есть вероятность заплатить дважды, если первая транзакция всё-таки подтвердится.
То есть, необходимо пользоваться управлением входами и запоминать, какие выходы расходует транзакция.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
Vadi2323 (OP)
Legendary
*
Offline Offline

Activity: 2044
Merit: 1231


View Profile
May 06, 2016, 08:50:21 AM
 #3

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

Нужно убедиться, что в новой транзакции расходуется тот же выход (или хотя бы один из выходов) что и в первой транзакции. Иначе есть вероятность заплатить дважды, если первая транзакция всё-таки подтвердится.
То есть, необходимо пользоваться управлением входами и запоминать, какие выходы расходует транзакция.

Согласен. Для тех, кто не в теме про траты выходов, скажу. Если переводится весь баланс - можно смело действовать. Повторного платежа не будет.
bct2
Hero Member
*****
Offline Offline

Activity: 1050
Merit: 508


View Profile
May 11, 2016, 07:04:38 PM
 #4

Вот ещё есть способ, запуск с ключём

Code:
-zapwallettxes=<mode>

Справка: Удалить все транзакции бумажника с возможностью восстановить эти части цепи блоков с помощью -rescan при запуске (1 = сохранять метаданные транзакции: например, владельца аккаунта и информацию запроса платежа; 2 = отбросить метаданные)

Сам не пробовал.
CheValdy
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
June 24, 2016, 09:23:18 AM
 #5

Вот ещё есть способ, запуск с ключём

Code:
-zapwallettxes=<mode>

Справка: Удалить все транзакции бумажника с возможностью восстановить эти части цепи блоков с помощью -rescan при запуске (1 = сохранять метаданные транзакции: например, владельца аккаунта и информацию запроса платежа; 2 = отбросить метаданные)

Сам не пробовал.


Не могли бы более подробно "для чайников" расписать как это делается?
Vadi2323 (OP)
Legendary
*
Offline Offline

Activity: 2044
Merit: 1231


View Profile
June 24, 2016, 10:14:21 AM
 #6

Не могли бы более подробно "для чайников" расписать как это делается?

Копируешь ярлык, с которого запускаешь кошелёк (Bitcoin Core). Затем изменяешь его - дописываешь -zapwallettxes=1, как показано на картинке:



и запускаешь с этого ярлыка кошелёк.

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

В режиме обычной работы запускать кошелёк без параметра -zapwallettxes
CheValdy
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
June 24, 2016, 03:18:29 PM
 #7

Не могли бы более подробно "для чайников" расписать как это делается?

Копируешь ярлык, с которого запускаешь кошелёк (Bitcoin Core). Затем изменяешь его - дописываешь -zapwallettxes=1, как показано на картинке:

https://i.imgur.com/Vw9IoMn.jpg

и запускаешь с этого ярлыка кошелёк.

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

В режиме обычной работы запускать кошелёк без параметра -zapwallettxes
Вот ещё есть способ, запуск с ключём

Code:
-zapwallettxes=<mode>

Справка: Удалить все транзакции бумажника с возможностью восстановить эти части цепи блоков с помощью -rescan при запуске (1 = сохранять метаданные транзакции: например, владельца аккаунта и информацию запроса платежа; 2 = отбросить метаданные)

Сам не пробовал.


Господа, случилось лучшее - прописал, запустил - коины на балансе! Добавил комиссию, отправил, все ушло.

Спасибо всем за участие и помощь! Способ работает.
blader7
Sr. Member
****
Offline Offline

Activity: 481
Merit: 258



View Profile
September 27, 2016, 09:35:18 AM
 #8

Вот, метод, описанный в первом посте, усовершенствован и находит оригинальное применение: Как наказать мошенника, «покупающего» биткоины на Ebay.

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

3. Вы создаете backup-копию биткоин-кошелька wallet.dat.
4. Вы посылаете мошеннику биткоин с нулевой комиссией (transaction free) в будний день.
5. Транзакция с нулевой комиссией зависает в пулах и ждет подтверждения. Это может занять несколько суток.
6. На следующий день мошенник запускает на Paypal диспут «неавторизованная транзакция».
7. Если транзакция все еще не имеет подтверждений, то есть не успела попасть в блокчейн, — прекрасно, вы почти выиграли! И раз Paypal-транзакция неавторизована, то получатель биткоина вашего получать не должен! Делаете следующее:
8. Смотрите в оригинальной транзакции (например на https://blockchain.info/), какие выходы из кошелька были потрачены на выплату мошеннику.
9. Восстанавливаете wallet.dat, сохраненный в backup-копии. В нем, естественно, отсутствует транзакция, которой вы платили мошеннику, а выходы UTXO, которые она использовала, выглядят неистраченными.
10. Используя опцию управления транзакциями, вы тратите те же самые выходы (вообще-то, достаточно любого одного из использованных в транзакции (см. п. 4), но спокойнее будет, если будут все), и создаете транзакцию, в которой вы отправляете тот же биткоин самому себе, либо же на дружественный адрес. Здесь как раз на комиссию скупиться не надо, и надо поставить ее побольше.
11. Майнеры, получив вторую транзакцию с высокой комиссией (соответственно, и с высоким приоритетом), с радостью ее добавят в блокчейн. Таким образом, в блокчейне останется транзакция (см. п. 10), а не подтвержденная транзакция (см. п. 4) будет конфликтной, и никогда в блокчейн не попадет. Мало того, даже если мошенник уже успел потратить полученные деньги, то и его трата также станет конфликтной, и он получит проблемы от своего контрагента. В результате, вы свой биткоин получили обратно, и таким образом «развернули доску» в игре с мошенником.

BitSend ◢◤Clients | Source
www.bitsend.info
█▄
█████▄
████████▄
███████████▄
██████████████
███████████▀
████████▀
█████▀
█▀












Segwit | Core 0.14 | Masternodes
XEVAN | DK3 | Electrum soon
Bitcore - BTX/BTC -Project












BSD -USDT | Bittrex | C.Gather | S.Exchange
Cryptopia | NovaExchange | Livecoin
Litebit.eu | Faucet | Bitsend Airdrop













████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████

████
 ████
  ████
   ████
    ████
     ████
      ████
       ████
        ████
       ████
      ████
     ████
    ████
   ████
  ████
 ████
████
Vadi2323 (OP)
Legendary
*
Offline Offline

Activity: 2044
Merit: 1231


View Profile
December 20, 2016, 09:09:35 AM
Last edit: December 20, 2016, 12:23:20 PM by Vadi2323
 #9

Почему-то способ перестал работать. Пересылаю монеты с большей комиссией, но во всех обозревателях блоков только первоначальная транзакция отображается. Что-то господа децентрализованные майнеры подправили в своём ПО.
Vadi2323 (OP)
Legendary
*
Offline Offline

Activity: 2044
Merit: 1231


View Profile
December 20, 2016, 12:23:38 PM
Last edit: December 20, 2016, 12:43:03 PM by Vadi2323
 #10

Кое-как получилось второй раз послать. Мне кажется какой-то глюк в новой версии кошелька. Или если часто повторно отправлять - майнеры не принимают такую транзакцию. Что-то это нехорошо всё выглядит в свете последних атак на сеть. Как будто кто-то прикручивает втихаря костыли и делает хорошую мину при плохой игре.

С кошельком нужно быть аккуратней, копирование wallet.dat во время работы программы может привести к получению повреждённой копии.
in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
December 20, 2016, 12:33:37 PM
 #11

С кошельком нужно быть аккуратней, копирование wallet.dat во время работы программы может привести к получению повреждённой копии.

Нужно пользоваться меню Файл -> Сделать резервную копию бумажника.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
botatrada
Sr. Member
****
Offline Offline

Activity: 389
Merit: 252


View Profile
December 20, 2016, 05:30:13 PM
 #12

у меня Линукс что делать?  Grin
maxFreeman
Member
**
Offline Offline

Activity: 73
Merit: 10

Crypto Investor


View Profile WWW
May 11, 2017, 11:14:23 AM
 #13

Не могли бы более подробно "для чайников" расписать как это делается?

Копируешь ярлык, с которого запускаешь кошелёк (Bitcoin Core). Затем изменяешь его - дописываешь -zapwallettxes=1, как показано на картинке:



и запускаешь с этого ярлыка кошелёк.

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

В режиме обычной работы запускать кошелёк без параметра -zapwallettxes
Вот ещё есть способ, запуск с ключём

Code:
-zapwallettxes=<mode>

Справка: Удалить все транзакции бумажника с возможностью восстановить эти части цепи блоков с помощью -rescan при запуске (1 = сохранять метаданные транзакции: например, владельца аккаунта и информацию запроса платежа; 2 = отбросить метаданные)

Сам не пробовал.


Господа, случилось лучшее - прописал, запустил - коины на балансе! Добавил комиссию, отправил, все ушло.

Спасибо всем за участие и помощь! Способ работает.

Что именно вы прописали? =1 или =2? Или вообще аргумент не ставили?
У меня не срабатывает. Точнее при запуске показывает полный баланс, а через несколько секунд всё опять исчезает...

The more you give The more you get!
in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
May 11, 2017, 11:30:51 AM
 #14

У меня не срабатывает. Точнее при запуске показывает полный баланс, а через несколько секунд всё опять исчезает...

Вообще-то -zapwallettxes должна ещё провести рескан (если автоматом не сканирует, надо запустить в ключом -rescan), а эта процедура занимает около получаса.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
bct2
Hero Member
*****
Offline Offline

Activity: 1050
Merit: 508


View Profile
May 11, 2017, 11:31:38 AM
 #15

Что именно вы прописали? =1 или =2? Или вообще аргумент не ставили?
У меня не срабатывает. Точнее при запуске показывает полный баланс, а через несколько секунд всё опять исчезает...

Я ставил 1. Пиши адрес кошелька, на котором баланс, посмотрим.

Вообще-то -zapwallettxes должна ещё провести рескан (если автоматом не сканирует, надо запустить в ключом -rescan), а эта процедура занимает около получаса.

Побольше занимает, чем полчаса... Если мне память не изменяет.
in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
May 11, 2017, 11:40:20 AM
 #16

Побольше занимает, чем полчаса... Если мне память не изменяет.

Зависит исключительно от процессора и HDD. На Celeron'е и 2-3 часа не хватит Cheesy

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
maxFreeman
Member
**
Offline Offline

Activity: 73
Merit: 10

Crypto Investor


View Profile WWW
May 11, 2017, 04:58:08 PM
 #17

У меня не срабатывает. Точнее при запуске показывает полный баланс, а через несколько секунд всё опять исчезает...

Вообще-то -zapwallettxes должна ещё провести рескан (если автоматом не сканирует, надо запустить в ключом -rescan), а эта процедура занимает около получаса.

Отдельно -rescan запустить или вместе с -zapwallet?

The more you give The more you get!
maxFreeman
Member
**
Offline Offline

Activity: 73
Merit: 10

Crypto Investor


View Profile WWW
May 11, 2017, 05:04:53 PM
 #18

Что именно вы прописали? =1 или =2? Или вообще аргумент не ставили?
У меня не срабатывает. Точнее при запуске показывает полный баланс, а через несколько секунд всё опять исчезает...

Я ставил 1. Пиши адрес кошелька, на котором баланс, посмотрим.



Вообще-то -zapwallettxes должна ещё провести рескан (если автоматом не сканирует, надо запустить в ключом -rescan), а эта процедура занимает около получаса.

Побольше занимает, чем полчаса... Если мне память не изменяет.

txid a5eddc0a108b6eae170ddc06afbe3cf27359aac77699f17a4b982ad72e7ee66d

-zapwallet 5 минут у меня занимает

The more you give The more you get!
vizito
Legendary
*
Offline Offline

Activity: 1778
Merit: 1098


View Profile WWW
May 11, 2017, 05:06:54 PM
 #19

У меня не срабатывает. Точнее при запуске показывает полный баланс, а через несколько секунд всё опять исчезает...

Вообще-то -zapwallettxes должна ещё провести рескан (если автоматом не сканирует, надо запустить в ключом -rescan), а эта процедура занимает около получаса.

Отдельно -rescan запустить или вместе с -zapwallet?
ну как бэ вместе ты не запустишь 2 команды сразу) так что по отдельности сначала одну потом вторую команду
in100
Legendary
*
Offline Offline

Activity: 1200
Merit: 1021



View Profile
May 11, 2017, 05:19:38 PM
 #20

Отдельно -rescan запустить или вместе с -zapwallet?
ну как бэ вместе ты не запустишь 2 команды сразу) так что по отдельности сначала одну потом вторую команду
А что помешает? Попробуй:
bitcoin-qt.exe -zapwallettxes -rescan

Но, наверное, лучше отдельно.

Так же можно попробовать экспортировать все адреса из кошеля в текстовый файл (команда в консоли кошеля dumpwallet), потом удалить (переименовать) старый wallet.dat, запустить кошель и импортировать адреса в новый wallet.dat (команда importwallet). Читай хелп по этим командам в консоли (команнды help dumpwallet и help importwallet), там всё просто.

1BTCin1ooigFtHHD82qquqysdfxFZGdd8a  |  LTCin1oo9JhxcZu8ZK5HivqwvzAdQSaoua  |  4NVCin1ooAd2XKoEfEhBn6tYNUHhojf4QS
Блокчейн биткоина с его алгоритмом децентрализованного консенсуса на самом деле неэффективен, но неэффективность – это та цена, которую мы платим за свободу.© Andreas Antonopoulos
Pages: [1] 2 3 4 5 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!