До блока транзакцию видят узлы, но каждый — по-своему

Узел проверяет consensus rules и собственную relay policy, прежде чем добавить операцию в memory pool и передать peers. Другой узел может ещё не получить её, уже удалить при нехватке памяти или применять иной минимальный fee rate. Поэтому «есть в одном explorer» означает наблюдение конкретной инфраструктуры, а не запись в реестре всех участников сети.

Четыре состояния одного txid
НаблюдениеЧто подтверждаетЧто проверить дальше
Есть в mempool источникаИсточник принял неподтверждённую версиюДругие узлы и fee rate
Не найденУ источника нет записиBroadcast, replacement, eviction или неверную сеть
Включён в блокТранзакция получила первое подтверждениеBlock hash и последующие confirmations
Conflicted / replacedТе же inputs потратила другая версияНовый txid и outputs
Четыре состояния одного txid
Наблюдение
Есть в mempool источника
Что подтверждает
Источник принял неподтверждённую версию
Что проверить дальше
Другие узлы и fee rate
Наблюдение
Не найден
Что подтверждает
У источника нет записи
Что проверить дальше
Broadcast, replacement, eviction или неверную сеть
Наблюдение
Включён в блок
Что подтверждает
Транзакция получила первое подтверждение
Что проверить дальше
Block hash и последующие confirmations
Наблюдение
Conflicted / replaced
Что подтверждает
Те же inputs потратила другая версия
Что проверить дальше
Новый txid и outputs

Майнер сравнивает ставку за место, а не только общую fee

Абсолютная transaction fee равна разнице между суммой inputs и outputs. Для сравнения затрат на block space её делят на virtual size: получается sat/vB. Транзакция с fee 4 000 sat и размером 400 vB даёт 10 sat/vB; другая с fee 3 000 sat и размером 150 vB — 20 sat/vB. Вторая платит меньше satoshi, но предлагает больше за единицу места.

Неподтверждённые переводы образуют семьи

Если B тратит output ещё неподтверждённой A, B становится descendant, а A — ancestor. Узел хранит эти зависимости; block builder может оценивать связанную группу, потому что child нельзя включить раньше parent. Это и объясняет CPFP: новая дочерняя транзакция с высокой fee делает суммарный package экономически привлекательнее.

Условный package parent + child
ЧастьVirtual sizeFeeОтдельный fee rate
Parent200 vB400 sat2 sat/vB
Child100 vB5 600 sat56 sat/vB
Вместе300 vB6 000 sat20 sat/vB
Условный package parent + child
Часть
Parent
Virtual size
200 vB
Fee
400 sat
Отдельный fee rate
2 sat/vB
Часть
Child
Virtual size
100 vB
Fee
5 600 sat
Отдельный fee rate
56 sat/vB
Часть
Вместе
Virtual size
300 vB
Fee
6 000 sat
Отдельный fee rate
20 sat/vB

Пример показывает арифметику, а не гарантию включения. Узел и miner policy ограничивают цепочки, размер и правила package acceptance; конкретный кошелёк должен контролировать подходящий output и уметь построить child. Получатель иногда способен применить CPFP к полученному output, отправитель — к change output, но это определяется фактической структурой транзакции.

RBF меняет конфликтующую версию, CPFP оставляет parent

Два механизма fee bump
МеханизмЧто появляетсяКакой факт меняется
RBFReplacement, конфликтующий хотя бы по одному input и проходящий policy feeУ перевода новый txid; inputs и outputs нужно сверить заново
CPFPChild, расходующий output parentИсходный txid остаётся, добавляется связанный txid
Два механизма fee bump
Механизм
RBF
Что появляется
Replacement, конфликтующий хотя бы по одному input и проходящий policy fee
Какой факт меняется
У перевода новый txid; inputs и outputs нужно сверить заново
Механизм
CPFP
Что появляется
Child, расходующий output parent
Какой факт меняется
Исходный txid остаётся, добавляется связанный txid

В общей RBF-модели replacement конфликтует хотя бы по одному input и должен пройти актуальные policy fee constraints; он не обязан сохранять весь исходный набор inputs. Конкретный RPC Bitcoin Core bumpfee, напротив, включает все original inputs, может добавить новые и возвращает новый txid. Современная документация Core не требует, чтобы исходная транзакция обязательно сигнализировала opt-in RBF, а policy самого Core эволюционирует. Но кошельки, сервисы и другие node implementations могут поддерживать разные действия и версии правил. Практический вопрос звучит не «RBF существует?», а «может ли этот кошелёк сейчас заменить именно эту транзакцию и какие outputs будут в replacement?».

Исчезновение из mempool не возвращает inputs отдельной операцией

Неподтверждённая запись может быть evicted или забыта конкретным узлом. В блокчейне при этом не возникает «refund transaction». Если inputs исходной транзакции были подтверждёнными неизрасходованными выходами и их не потратил подтверждённый конфликт, удаление записи из mempool не уничтожает эти UTXO. Но output, созданный только неподтверждённым parent, не входит в подтверждённый набор неизрасходованных выходов (UTXO set), пока parent не попадёт в блок. Wallet может временно показывать confirmed inputs как занятые из-за своей локальной истории, поэтому abandon, rebroadcast и rebuild — разные действия, зависящие от приложения.

Минимальный разбор перед любым fee bump

  • зафиксировать исходный txid и полную сеть Bitcoin;
  • проверить confirmations и не появился ли confirmed conflict;
  • прочитать fee, virtual size и fee rate, а не только одну сумму;
  • посмотреть ancestors, descendants и доступные outputs;
  • узнать, предлагает ли исходный wallet RBF, CPFP или rebroadcast;
  • после действия сохранить новый txid и не считать старую ссылку доказательством результата.

Результат диагностики — не обещание времени, а новая проверяемая запись: либо исходный txid включён в блок, либо replacement получил собственный txid, либо parent и child образуют видимый package. До одного из этих исходов pending остаётся наблюдением, а обычная повторная отправка рискует создать отдельный платёж.

Источники

Мы используем прямые ссылки и фиксируем дату проверки. Полный текст чужих материалов не перепечатывается.

  1. Bitcoin Core 31.0 — getmempoolentry Bitcoin Core · Проверено 15 августа 2026 г. в 03:02 GMT+5
  2. Bitcoin Core 31.0 — bumpfee Bitcoin Core · Проверено 15 августа 2026 г. в 03:02 GMT+5
  3. Bitcoin Core 31.0 — estimatesmartfee Bitcoin Core · Проверено 15 августа 2026 г. в 03:02 GMT+5
  4. Bitcoin Core — mempool replacement policy Bitcoin Core · Проверено 15 августа 2026 г. в 03:02 GMT+5
  5. Bitcoin Core 31.0 — getmempoolcluster Bitcoin Core · Проверено 15 августа 2026 г. в 03:02 GMT+5
  6. Bitcoin Core 31.0 — getmempoolinfo Bitcoin Core · Проверено 15 августа 2026 г. в 03:02 GMT+5
Материал носит информационный характер и не является индивидуальной рекомендацией. Криптоактивы связаны с риском волатильности, технических сбоев, хищения и полной потери средств.