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

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

Вторая по частоте причина статуса UnConfirmed - наличие ранее неподтвержденных переводов. Обычно сделки необходимо подтверждать по цепочке. Новые транзакции не попадут в блок, пока входящие монеты не подтверждены.

Почему транзакции теряются?

Биткоин-ноды имеют разные настройки. Некоторые удаляют транзакции, которые не были подтверждены в течении 1-3 суток. Некоторые не принимают транзакции со слишком низкой комиссией сети. Так, например, если мемпул переполнен и в нем уже более 50 Мб необработанных записей, а средняя комиссия сети 30 сатоши на байт, тогда транзакции с комиссией 1 сатоши на байт нода может не принимать.

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

Именно из-за настроек ноды в разных блокчейн-эксплорерах вы можете наблюдать разное количество неподтвержденных транзакций.

скриншот мемпулов трёх разных эксплорреров в один и тот же момент
скриншот мемпулов трёх разных эксплорреров в один и тот же момент

Что делать, если биткоин-транзакция зависла:

  • Ждать, пока майнеры разберут по блокам транзакции с более высокой комиссией и дойдут до вашей. Может занять от нескольких часов до нескольких дней.

  • Сделать Double-Spend (даблспенд). Вариант доступен только для отправителя. Предусматривает «двойное расходование», т.е. собрать полностью новую транзакцию, может даже на другую сумму, с большей комиссией сети. Тогда майнеры выберут ее как более выгодную для себя, а старую транзакцию удалят и забудут. 

  • Функция replace-by-fee - замена комиссии в той же транзакции. Фактически здесь все зависит от отправителя. Поддерживается кошельками Bitcoin-QT, Electrum, Samourai Wallet (Android), Green, Blue Wallet и другими. Если у Вас произошла ситуация с «зависанием», в будущем обязательно воспользуйтесь именно таким кошельком.

  • CPFP (Child pays for parent) - использование неподтвержденных монет в новой транзакции с высокой комиссией. Таким образом майнеры возьмут обе транзакции, т. к. новая транзакция принесет доход майнерам, который покроет добавление обоих переводов. Этот способ только для получателя.

  • В будущем обязательно пользуйтесь SegWit-адресами, они начинаются на bc1 или в переходном формате на 3. Такие транзакции более приоритетные в сети и стоят дешевле. Почти все кошельки поддерживают данный формат.

  • Новый стандарт Taproot, на данный момент крайне мало кто поддерживает, но эти транзакции еще меньше и дешевле в использовании. Протокол Taproot и подпись Schnorr признаны следующим этапом масштабирования сети.

  • Вариант, при котором используются специальные ускорители. Не всегда для пользователей он удобен, так как достаточно дорогой, но бывает такое, что это тот самый единственный выход из ситуации. Огромной популярностью пользуются viabtc.com и btc.com. Воспользоваться им может и отправитель, и получатель. Это майнговые пулы, которые за дополнительную плату добавляют в ближайший блок данную транзакцию. Минус этого способа в высокой цене.

Как ускорить подтверждение транзакции?

Если перевод отображается не во всех блокчейн-эксплорерах, то транзакцию лучше заново отправить. Для этого скопируйте хэш (hash) транзакции или сырую транзакцию (raw tx), в зависимости что требуется, и отправьте вручную с использованием следующих форм:

Также существуют платные и бесплатные акселераторы, использующие множество API запросов для бродкаста транзакции:

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

Комментарии (6)


  1. multibook
    08.07.2022 19:11

    Весьма полезно, спасибо. Как раз просматриваю кошельки для ускорения транзакций.

    Вы сами каким кошельком пользуетесь. если не секрет?


    1. MBoyarov Автор
      08.07.2022 19:38

      десктопный Bitcoin QT, самый надёжный и функциональный, хоть и занимает много места из за полной ноды


      1. vicsoftware
        08.07.2022 23:58

        И сколько сейчас размер ноды?


        1. Manrus
          09.07.2022 10:41
          +1

          ~440 ГБ


      1. Bablofil
        10.07.2022 08:37
        +1

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


  1. saege5b
    09.07.2022 08:53

    Т.е. по сути: ставь двойную-тройную от средней транзакции, а в критических случаях х5-х10