Как ускорить зависшую транзакцию Bitcoin
Зависшая транзакция Bitcoin почти всегда означает, что её комиссия была слишком низкой для текущего спроса. Руководство показывает, как это проверить и ускорить транзакцию с помощью RBF из кошелька отправителя или CPFP со стороны получателя.
Зависшая транзакция Bitcoin почти всегда означает, что её ставка комиссии была слишком низкой для текущего спроса. В этом руководстве показано, как это проверить, а затем как ускорить транзакцию с помощью replace-by-fee (RBF) из кошелька отправителя или child-pays-for-parent (CPFP) со стороны получателя.
Шаг 1: Проверьте, что происходит на самом деле
Скопируйте идентификатор транзакции (txid) из кошелька и вставьте его в блок-эксплорер. Наше руководство о том, что такое блокчейн-эксплорер, показывает, где искать.
Нужно проверить три вещи:
- Находится ли транзакция в мемпуле вообще? Если эксплорер не может её найти, возможно, она так и не была отправлена в сеть. Решение: повторная трансляция из кошелька.
- Какую ставку комиссии она заплатила? Ищите значение в сатоши на виртуальный байт (sat/vB).
- Какую ставку платят последние блоки? Если блоки подтверждаются при 20 sat/vB, а ваша транзакция платит 2 sat/vB, у майнеров нет причин её включать, пока спрос не снизится.
Если ваша ставка комиссии близка к той, что платят последние блоки, ожидание часто оказывается самым дешёвым решением. Наше руководство по комиссиям в блокчейн-транзакциях объясняет, почему ставка меняется.
Шаг 2: Решите, ждать ли
Транзакция с низкой комиссией не теряется. Она находится в мемпуле узлов сети, пока не будет подтверждена, заменена или отброшена. Bitcoin Core, наиболее широко используемое программное обеспечение узла, по умолчанию отбрасывает неподтверждённые транзакции через 336 часов (14 дней), а узлы с заполненным мемпулом сначала отбрасывают транзакции с самой низкой комиссией. Когда транзакция исчезает с большинства узлов, монеты фактически снова находятся под контролем вашего кошелька, хотя ему может потребоваться пересканирование или повторная трансляция, чтобы это отобразить.
Ожидание имеет смысл, если вы не спешите и комиссии обычно снижаются в более спокойное время. Если платёж срочный, переходите к повышению комиссии.
Шаг 3: Повысьте комиссию с помощью replace-by-fee (RBF)
RBF означает отправку новой версии той же транзакции, которая тратит те же монеты, но с более высокой комиссией. Майнеры предпочитают версию, которая платит больше, а после её подтверждения исходная транзакция становится недействительной.
Как это сделать. Многие кошельки показывают кнопку «Bump fee», «Speed up» или «Increase fee» для неподтверждённых транзакций. Вы выбираете новую ставку комиссии и подписываете транзакцию снова.
Правила. Замещающая транзакция должна платить большую общую комиссию и более высокую ставку комиссии, чем исходная. Исторически транзакции должны были заранее сигнализировать, что их можно заменить (BIP 125). Начиная с Bitcoin Core 28.0, узлы по умолчанию принимают замены даже без такого сигнала, однако ваш кошелёк всё равно должен поддерживать создание замены.
Пример расчёта. Числа иллюстративные.
- Исходная транзакция: 141 виртуальный байт при 2 sat/vB, комиссия 282 сатоши
- Текущая ставка для следующего блока: около 20 sat/vB
- Замещающая транзакция: те же 141 vB при 20 sat/vB, комиссия 2 820 сатоши
Вы платите на 2 538 сатоши больше, чем за исходную транзакцию. Платится только комиссия замещающей транзакции, так как подтвердиться может только одна версия.
Шаг 4: Или проведите её через child-pays-for-parent (CPFP)
CPFP работает с другой стороны. Тот, кто контролирует выход зависшей транзакции, обычно получатель или ваш собственный выход сдачи, тратит его в новой «дочерней» транзакции с высокой комиссией. Майнеры рассматривают две транзакции как пакет: чтобы получить комиссию дочерней транзакции, они также должны подтвердить родительскую.
Рисунок: RBF и CPFP рядом, с использованием иллюстративных чисел из примеров расчёта.
Пример расчёта. Числа иллюстративные.
- Зависшая родительская транзакция: 141 vB, платит 282 сатоши (2 sat/vB)
- Дочерняя транзакция: 110 vB
- Целевая ставка для пакета: 20 sat/vB
- Размер пакета: 141 + 110 = 251 vB, значит, пакету нужно 251 × 20 = 5 020 сатоши в сумме
- Комиссия дочерней транзакции: 5 020 − 282 = 4 738 сатоши, что составляет около 43 sat/vB само по себе
CPFP стоит дороже, чем RBF, для того же результата, так как вы платите за дополнительную дочернюю транзакцию. Однако это по-прежнему единственный вариант, когда отправитель не может или не хочет заменить транзакцию.
RBF и CPFP в сравнении
| Замена комиссии (Replace-by-fee, RBF) | Ребёнок платит за родителя (Child-pays-for-parent, CPFP) | |
|---|---|---|
| Кто может это сделать | Отправитель | Тот, кто контролирует выход зависшей транзакции, обычно получатель |
| Как это работает | Повторно отправляет тот же платёж с более высокой комиссией | Добавляет транзакцию с высокой комиссией, которая тратит выход зависшей транзакции |
| Общая комиссия в примерах | 2 820 сатоши | 5 020 сатоши (282 + 4 738) |
| Требуемая поддержка кошельком | Опция «bump fee» | Возможность потратить неподтверждённый выход |
| Лучше всего подходит, когда | Вы отправили перевод, и ваш кошелёк поддерживает RBF | Вы получатель или отправитель не может действовать |
Шаг 5: если перевод отправила биржа или платформа
Обычно вы не можете ускорить вывод, отправленный биржей, так как у вас нет контроля над её ключами. Поделитесь txid с службой поддержки платформы через официальное приложение или сайт и спросите, может ли она ускорить транзакцию. Если вы получатель зависшего депозита, платформа зачислит средства только после подтверждения транзакции. Обращайтесь в поддержку только по официальным каналам и никогда не сообщайте seed-фразу или коды 2FA тем, кто предлагает «разблокировать» транзакцию.
Некоторые майнинг-пулы предлагают платное «ускорение транзакций»: они включают вашу транзакцию в свои блоки. Это может сработать, но результат зависит от того, найдёт ли этот пул блок, и стоимость может превысить простое повышение комиссии.
Шаг 6: как избежать этого в следующий раз
- Проверьте комиссию перед отправкой. Большинство кошельков предлагают оценку ставки для нужного времени подтверждения; в загруженные периоды для срочных платежей лучше принять более высокую оценку.
- Используйте кошелёк с поддержкой RBF. Опция «bump fee» важнее, чем экономия нескольких сатоши на первой попытке.
- Меньше входов, меньше комиссия. Платёж, оплаченный множеством мелких монет, занимает больше места в блоке. Наш материал о UTXO объясняет почему.
- Для крупных или новых переводов сначала отправьте тестовую сумму. Наш чек-лист о том, как безопасно выводить криптовалюту, описывает весь порядок действий.
Эта статья носит образовательный характер и не является финансовой, инвестиционной, юридической или налоговой консультацией. Цифровые активы волатильны, и вы можете потерять вложенные средства.
Источники
- BIP 125: Opt-in Full Replace-by-Fee Signaling — Bitcoin Improvement Proposals, GitHub
- Примечания к выпуску Bitcoin Core 28.0 (mempoolfullrbf включён по умолчанию) — Bitcoin Core, GitHub
- Исходный код Bitcoin Core, mempool_options.h (срок хранения mempool по умолчанию — 336 часов) — Bitcoin Core, GitHub