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

Двойная трата Double-spending - пошаговая инструкция с картинками


e46btc

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

  • Ответов 646
  • Создана
  • Последний ответ

Топ авторов темы

5 часов назад, kzw сказал:

как отменить транзакцию?

removeprunedfunds пробовали?

5 часов назад, kzw сказал:

что нужно сделать, что бы, либо транза появилась в сети

может просто нода не полностью синхронизирована?

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

10 часов назад, kzw сказал:

метод decoderawtransaction(<trans(hex)>) расшифровывает эту транзу, но там тоже нет ничего интересного

 

Комиссия какая у этой транзакции?

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

2 часа назад, Old Miner сказал:

Комиссия какая у этой транзакции?

эмс... если не называть точных сумм, то очень (неприлично) большая
 

 

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

пробовали?

еще нет, есть мнение, что сервак сам по прошествии (в "сети" говорят 14 дней) какого то времени отменит транзу
ждем... прошло только 10 дней
 

 

7 часов назад, jam72 сказал:
13 часов назад, kzw сказал:

 

removeprunedfunds пробовали?

судя по описанию, это должно удалить только конкретную транзу из кошелька, но вернется ли баланс в этом случае?
но нет, пока не пробовали

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

13 минут назад, kzw сказал:

еще нет, есть мнение, что сервак сам по прошествии (в "сети" говорят 14 дней) какого то времени отменит транзу
ждем... прошло только 10 дней

Там можно в конфиге настроить это время хоть на 1 час и не ждать.

15 минут назад, kzw сказал:

судя по описанию, это должно удалить только конкретную транзу из кошелька, но вернется ли баланс в этом случае?

Должен, а как иначе? Впрочем, я ни разу не пользовался этой командой, ничего утверждать не могу.

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

29 minutes ago, kzw said:

еще нет, есть мнение, что сервак сам по прошествии (в "сети" говорят 14 дней) какого то времени отменит транзу
ждем... прошло только 10 дней

Не занимайтесь ерундой. По зависшим транзакциям есть подробный FAQ , там есть 90%+ информации по этой теме, которая может понадобиться обычному пользователю.

Если вы хотите отмены и траназкции нет в эксплорерах - всё максимально просто.

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

9 часов назад, jam72 сказал:

просто нода не полностью синхронизирована?

как это можно проверить?
какие то методы из АПИ есть?
или через консоль посмотреть?
или как это можно поправить ("полностью синхронизировать ноду")?

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

@kzw можно дать команду getblockcount и сравнить значение с последним блоком на эксплорере.

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

9 минут назад, sankopolo сказал:

там есть 90%+ информации по этой теме

я с той темы и перешел в эту (ну типа прочитал то, что в шапке написано)
 

 

10 минут назад, sankopolo сказал:

Если вы хотите отмены и траназкции нет в эксплорерах - всё максимально просто

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

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

6 минут назад, jam72 сказал:

@kzw можно дать команду getblock и сравнить значение с последним блоком на эксплорере.

@kzw сорри, наврал, getblockcount на самом деле надо.

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

3 минуты назад, jam72 сказал:

дать команду getblock и сравнить

метод подразумевает, что в аргументе должен быть blockhash

где его взять?
используя метод gettransaction(<txid>) выдает некую информацию, но там нет упоминания blockhash
можно раскодировать транзу
там есть нечто похожее [hash] => <дохрена_символов>
это оно?

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

@kzw по памяти писал, ошибся, выше поправил. Можно и getblockchaininfo посмотреть, там тоже число блоков есть.

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

4 минуты назад, jam72 сказал:

getblockcount на самом деле надо

ок, выполнил команду
получил NNN
запросил в эксплорере этот блок
что мне смотреть в эксплорере?
 

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

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

запросил в эксплорере этот блок

Не надо этот блок запрашивать.

2 минуты назад, kzw сказал:

что мне смотреть в эксплорере?

Например, здесь в данный момент номер последнего блока 666613, если ваша нода синхронизирована, то должно быть такое же число.

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

на момент написания этого поста, номер блока уже другой 666616
но не суть, на момент написания предыдущего поста, запрос отдал именно 666613 - запрос методом getblockcount()
так что все нормально с этим

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

1 hour ago, kzw said:

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

Я вроде уже писал, но могу ещё раз.

  

On 3/7/2013 at 6:42 AM, sankopolo said:

Закрываем кошелек, запускаем его с параметром -zapwallettxes и ждем пока он откроется. Когда кошелек запустится, все неподтвержденные транзакции из него исчезнут (но они ещё есть в сети!). Для bitcoin core 0.14 и выше потребуется перед запуском ещё удалить (переименовать или перенести) файл mempool.dat.

 

Quote

  -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.
       payment request information, 2 = drop tx meta data)

 

 

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

18 минут назад, sankopolo сказал:

-zapwallettxes=<mode>

 

Кстати, из последней версии Bitcoin Core 0.21.0 выпилили -zapwallettxes. Взамен предлагают пользоваться консольной командой:

abandontransaction "txid"

 

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

6 минут назад, sankopolo сказал:

Для bitcoin core 0.14 и выше потребуется перед запуском ещё удалить (переименовать или перенести) файл mempool.dat.

на серваке на данный момент 0.15

ок, об этом методе знаю, но думал может есть что то менее радикальное
 

8 минут назад, sankopolo сказал:

(но они ещё есть в сети!).

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

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

9 минут назад, kzw сказал:

она же в сети, только ее никто не видит

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

 

15 минут назад, kzw сказал:

на серваке на данный момент 0.15

И после всех этих манипуляций неплохо бы обновиться.

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

Только что, Old Miner сказал:

неплохо бы обновиться

да, площадка уже подготовлена

Только что, Old Miner сказал:

и в дальнейшем не должен будет меняться

собственно этого и добиваюсь ?
в общем, всем спасибо за ответы, отпишусь по результату

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

такс...
отписываю
сделали -zapwallettxes
на баланс вернулось даже больше, чем сумма пропавшей транзы, возможно (и скорее всего) были и другие пропавшие

на момент совершения транзы (дата), этой транзы уже нет

надеюсь и не вернется...
еще раз спасибо всем ?

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

да, вот такой вопрос

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

использую:

1. метод listunspent() собирает кошельки с минимальными выходами и наличием на кошельках средств
собирает до тех пор, пока нужная сумма не набрана (сумма которая выводится)

2. метод createrawtransaction(<кошельки из п1>, <кош(куда) = сумма>)

3. метод fundrawtransaction(<данные из п2>, <объект_json(кош для сдачи)>)
4. метод signrawtransactionwithwallet(<hex транзы из п3>)
подписывает сырую транзу перед отправкой
вот как раз здесь метод должен вернуть комиссию
транза пока не отправлена в сеть
но можно назначить комиссию самому и добавить ее в массив <объект_json(кош для сдачи)> отдельным элементом
5. метод sendrawtransaction(<HEX подписанной транзы с комиссией>)
это уже именно отправка транзакции в сеть
собственно вопрос в том, как правильно рассчитать комиссию
если доверить серваку, то комиссия слишком большая

если считать самому, то какие данные использовать, исходя из тех методов что используются для создания транзы (или какие то другие)

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

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

5 часов назад, kzw сказал:

собственно вопрос в том, как правильно рассчитать комиссию

 Комиссия равна числу вбайт транзакции, помноженному на цену передачи 1 байта. Первое посчитать не проблема, а вот цену выбрать точно не всегда получается, она зависит от будущих нестабильных событий. Я смотрю недавнюю цену здесь на третьем графике и, глядя там же на тенденцию ее изменения, выбираю какое-то значение.

 

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

Я когда-то посчитал и у меня получились такие значения:

p2pkh 10+148i+34o
p2sh-p2wpkh 11+91i+32o
p2wpkh 11+68i+31o

p2wsh multisig 11+(42+18m+8.5n)i+43o
p2sh-p2wsh multisig 11+(77+18m+8.5n)i+32o
p2sh multisig 10+(46_49+72m+33n)i+31o

i здесь - количество входов, o - выходов. Погрешность результата в пределах нескольких байт.

 

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

7 часов назад, jam72 сказал:

смотрю недавнюю цену здесь на третьем графике

я не могу скриптом "посмотреть" цену ?
это нужно для PHP скрипта, который будет сам считать и отправлять транзу в сеть
 

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

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

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

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

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

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

Войти

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

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

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

    • Blockster.com + Enjin.io | Двойная раздача: 10$ + бесплатные NFT

      Ребята! Есть возможность поучаствовать сразу в двойной раздаче,  участвуя в акциях от двух крайне солидных крипто-проектов, которые партнерятся друг с другом: 10$ от Blockster + получаем бесплатные NFT от Enjin !!!   ЭТАП 1 Итак, начнем с Blockster — будущей социальной сети для крипто-инвесторов и работающих в этой сфере. Классный сайт, прозрачный проект, открытая команда и уже полмиллиона зарегистрировавшихся в ожидании юзеров. 1) Переходим на САЙТ 2) Жмем "Get Access"

      в Раздачи монет

    • Трата и получение Tether USDT (omni) с помощью Trezor, Ledger, Keepkey

      Хочу поделиться возможностью получать и отправлять Tether USDT (omni), который работает на блокчейне биткоина с помощью аппаратных кошельков Trezor, Ledger, Keepkey. Начнем с теории: Tether USDT использует блокчейн биткоина для движение средств в omni инфраструктуре - кошельках, обозревателях и т.п.. Для транзакции с usdt используется команда биткоин скрипта op_return, которая позволяет записать произвольные данные в блокчейн. Именно эти данные служат идентификатором для omni транзакций.

      в Кошельки для криптовалют

    • Двойная транзакция

      Оплачивал услуги через coinbase и как-то получилось, что произошло двойное списание. При этом ID транзакции одно и тоже, разные только последние три цифры  которые после - . У первой 000, у второй 001. На блокчейне естественно транзакция одна, а в кошельке деньги списаны за две.  Можно ли вернуть средства с дублирующей транзакции? Как?  Клиент bitcoin core.

      в Общий


×
×
  • Создать...