CRYPT.ruглавный криптожурнал

Как остановить криптотранзакцию до и после подтверждения в сети

Incrypted разобрало, что делать, если отправленный криптоплатеж зависает или уйдет не туда. Полную отмену перевода блокчейн не предусматривает, но до попадания в блок есть способы остановить или заменить транзакцию.

Как остановить криптотранзакцию до и после подтверждения в сети
Изображение: godoycordoba / Pixabay

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

Если перевод подписан, но еще не отправлен в сеть, его можно просто не публиковать. После отправки узлам операция обычно оказывается в мемпуле — списке неподтвержденных транзакций. На этом этапе отправитель может создать конфликтующую транзакцию и попытаться заменить исходную. В Ethereum для этого обычно отправляют самому себе нулевой перевод, в биткоине — транзакцию с теми же входами, но на собственный адрес. В обоих случаях придется заплатить комиссию, а какую из двух версий подтвердят майнеры или валидаторы, пользователь не выбирает: старая транзакция остается в сети, и если она попадет в блок первой, заменить результат уже не удастся.

Чаще всего платежи задерживаются из-за низкой комиссии — места в блоках не хватает всем, и приоритет получают операции с более высокой платой. В биткоине учитывается ставка в sat/vB, в Ethereum — базовая плата и надбавка валидатору. Другая причина — очередность: в Ethereum у каждого аккаунта есть nonce, и пока не пройдет более ранняя транзакция, следующие будут ждать. В биткоине похожая зависимость возникает, когда пользователь пытается потратить монеты из еще не подтвержденного перевода — здесь может помочь механизм CPFP, повышающий общую комиссию сразу за обе операции.

Чтобы проверить реальный статус перевода, нужен TxID — его ищут в истории кошелька и вставляют в обозреватель сети: Mempool.space для биткоина, Etherscan для Ethereum, BscScan для BNB Chain, Tronscan для Tron, Solscan для Solana. Статусы Pending и Unconfirmed говорят, что транзакция еще ждет подтверждения и теоретически может быть заменена. Confirmed и Success означают, что перевод уже включен в блок и отмене не подлежит, хотя для крупных сумм в биткоине часто ждут шести подтверждений. Статус Failed указывает на ошибку исполнения — например, когда смарт-контракт отклонил вызов, при этом газ в Ethereum обычно не возвращается. Dropped означает, что транзакция исчезла из мемпула известных обозревателю узлов, но может сохраняться у других.

Источник

  • IncryptedКак отменить криптовалютную транзакцию — что возможно до и после подтверждения

Ещё в рубрике «Статьи»

  1. 13 ноября, пятница