Транзакція Bitcoin може залишатися непідтвердженою годинами — або навіть довше, якщо її ставка комісій занадто низька для поточного попиту в мемпулі. Монети не втрачаються автоматично. У багатьох випадках відправник може замінити транзакцію на версію з вищою комісією, або власник одного з її виходів може створити дочірню транзакцію, яка робить пакет більш привабливим для майнерів.
Швидка відповідь: використовуйте Replace-by-Commission (RBF), коли надсилаючий гаманець може створити дійсну заміну з вищою комісією. Використовуйте Child-Pays-for-Parent (CPFP), коли можете витратити результат непідтвердженої транзакції і заплатити достатньо за обидві транзакції як пакет. Не імпровізуйте з приватними ключами чи «агентами для відновлення». Слідкуйте за задокументованою функцією підвищення оплати в гаманці.
Чому транзакції з біткоїном застрягають
Простір у блоках біткоїна обмежений. Гаманці зазвичай обирають комісію у сатоші за віртуальний байт (sat/vB), а майнери обирають транзакції відповідно до доходу від комісії та політики. Коли попит зростає, ставка збору, яка здавалася розумною на момент трансляції, може опуститися нижче підтвердженого діапазону.
Поширені причини включають:
- гаманець використовував повільну або застарілу оцінку плати;
- попит на Mempool зріс після трансляції;
- транзакція велика, оскільки витрачає багато UTXO;
- непідтверджена батьківська транзакція також має низьку комісію;
- відправник вручну обирав плату нижче поточних ретрансляційних або майнінгових уподобань; або
- Сервіс затримував трансляцію або пакетне відключення.
Блочний експлорер може показувати ідентифікатор транзакції, статус підтвердження, розмір віртуального сервера, комісію та непідтверджених предків. Використовуйте більше ніж один авторитетний дослідник, якщо статус незрозумілий, оскільки окремі сервіси можуть мати різні перегляди мемпулів.
Що робить Replace-by-Fee
RBF створює нову транзакцію, яка конфліктує з оригінальною, витрачаючи принаймні один із тих самих вхідних даних. Замінник сплачує вищу абсолютну комісію та ставку за чинними релейними правилами. Якщо майнери підтверджують заміну, оригінал більше не може підтвердити, бо його вхідні ресурси вже витрачені.
У споживчому гаманці ця функція може бути позначена Прискорення, Додатковий внесок, або Підвищення плати. Гаманець зазвичай зменшує вихід змін або додає ще один вхід для фінансування вищої комісії. Потім він підписує і транслює заміну.
Коли RBF — кращий варіант
- Ви створили початкову транзакцію.
- Ваш гаманець зберігає дані транзакцій і підтримує підвищення комісій.
- Транзакція замінюється за гаманцем і мережевою політикою, що використовується.
- Ви все одно контролюєте достатню суму або додаткові ресурси, щоб сплатити підвищення.
Перед затвердженням перевірте кожного отримувача та суму. Законне підвищення комісій зазвичай зберігає запланований платіж і змінює лише фінансування або зміну комісії. Якщо інструмент запитує початкову фразу, зупиніться: підвищення плати не вимагає надання фрази відновлення сайту чи агенту підтримки.
Що робить «Дитина платить за батька»
CPFP бере витратний вихід від непідтвердженого батька і створює дочірню транзакцію з високою комісією. Майнер, який хоче отримати дочірню, повинен спочатку підтвердити батька, тому майнер оцінює об'єднаний пакет.
Відповідне число — ставка пакетної плати:
Ставка пакетної плати = (плата за батьків + плата за дитину) ÷ (батьківський vsize + дитячий vsize)
Уявіть, що батько з 200 vB платив 400 сатоші або 2 sat/vB. Дитина з 150 vB платить 6 600 сатоші. Разом вони платять 7 000 сатоші на 350 vB, забезпечуючи ефективну ставку пакету 20 sat/vB. Чи достатньо цього — залежить від поточних умов і політики вузла.
Хто може користуватися CPFP?
Отримувач може мати змогу витратити вхідний непідтверджений вихід. Відправник також може витратити непідтверджену зміну. Гаманець має підтримувати витрати непідтверджених коштів і правильно будувати дитину. Деякі кастодіальні служби не надають такого контролю.
CPFP може бути неефективним, якщо у батька є кілька предків або дитина велика. Політика ретранслятора пакетів і гірничої промисловості також накладають обмеження. Використовуйте нативну функцію гаманця, а не намагайтеся розраховувати сиру транзакцію, якщо ви не розумієте політику UTXO, підписання, змін і комісій.
RBF проти CPFP
| Питання | RBF | CPFP |
|---|---|---|
| Хто зазвичай ініціює це? | Оригінальний відправник | Отримувач або відправник, який контролює вихід |
| Що змінюється? | Початкова транзакція замінюється | Додається нова дитина |
| Цільова ставка | Заміна повинна відповідати правилам плати за реле | Батьки та дитина потребують конкурентної тарифної ставки |
| Поширена етикетка гаманця | Плата за прискорення / bump | CPFP / витрати непідтверджені дані |
| Головне обмеження | Гаманець або транзакція можуть не підтримувати заміну | Ви повинні контролювати відповідний вихід і платити за обидва розміри |
Безпечна послідовність усунення несправностей
- Переконайтеся, що транзакція існує. Скопіюйте ID транзакції з гаманця та перевірте його в надійних провідниках.
- Перевірте підтвердження. Ніколи не створюйте конкуруючий ручний платіж лише тому, що один додаток не оновився.
- Підтвердіть пункт призначення. Підвищення оплати не може виправити вже надісланий платіж на неправильну адресу.
- Перегляньте поточні оцінки гонорарів. Порівняйте запропоновану заміну або ставку пакета з бажаним горизонтом підтвердження.
- Спочатку скористайтеся вбудованою опцією RBF у гаманці Якщо ви є відправником і вона доступна.
- Розглянемо CPFP Тільки якщо відповідний вихід під вашим контролем і ваш гаманець його підтримує.
- Зв'яжіться з кастодіальною службою коли це призвело до зняття коштів. Лише платформа може замінити або прискорити свою транзакцію.
- Чекайте, коли безпечного підйому не буде. Попит на мемпул може впасти, або вузли можуть зрештою виключити транзакцію. Поведінка гаманця після виселення варіюється, тому слідуйте його документації перед повторними витратами.
Помилки, яких слід уникати
- Не діліться початковою фразою або приватним ключем із дослідником блоків, «майнером» або сервісом відновлення.
- Не надсилайте другий незалежний платіж отримувачу, якщо обидві сторони не розуміють, що обидва платежі можуть підтвердити це.
- Не припускайте, що повторне ретранслювання підвищує пріоритет; Це не підвищує комісію.
- Не розраховуйте лише ставку оплати дитини за CPFP; Майнери дбають про економіку пакетів.
- Не розглядайте непідтверджену угоду як остаточну для високовартової доставки без відповідної політики ризику.
Для інформації про те, як створюються транзакції з біткоїном, дивіться наш Посібник з оплати біткоїном. Щоб зрозуміти, чому майнери обирають платні транзакції, прочитайте як працює майнінг біткоїна.
Поширені запитання
Чи може транзакція з біткоїном залишатися непідтвердженою назавжди?
Немає універсального мемпулу, спільного для кожного вузла. Вузли можуть зберігати, ретранслювати або вилучати транзакції відповідно до місцевої політики. Виселення транзакції також може з'явитися знову, якщо її повторно транслювати. Перевірте свій гаманець перед тим, як починати нові витрати.
Чи означає одне підтвердження, що платіж не може змінитися?
Підтвердження різко знижує ризик заміни, але остаточність є ймовірнісною. Відповідна кількість підтверджень залежить від вартості, моделі загрози та політики отримувача.
Чи може реципієнт виконувати RBF?
Зазвичай відправник створює заміну, оскільки він контролює вхідні дані. Отримувач, який контролює вихід, може натомість використовувати CPFP.
Це освітня інформація, а не заміна підтримки для гаманця. Перевірте всі адреси, суми та оцінки зборів перед підписанням.