Bitcoin-транзакція зависла і не підтверджується — що робити

Непідтверджена транзакція біткоіни — угода в кріптовалютной мережі, яка після ініціації не отримала місце в черговому блоці ланцюжка блокчейн. Число операцій з Bitcoin зростає, тому при заповненні елементів blockchain з’являється конкуренція. Розмір блоку залишається незмінним і становить лише 1000 Кб (1 Мб). Тож не дивно, що в кріптосеті все частіше виникають затримки, які розтягуються на 5-7 годин і більше.

Такі ситуації створюють труднощі для людей, які планували швидко перевести гроші, але зіткнулися з непередбаченою паузою в транзакції. Що робити? Як вчинити, якщо платіж завис? У чому особливості кожного з методів? Ці та інші нюанси розглянемо нижче.

Чому може зависнути транзакція біткоіни?

Графічне зображення зависання транзакції біткоіни

Час відправки криптовалюта іншому користувачеві залежить від ряду факторів — завантаженості мережі на момент переведення, розміру встановленої комісії, обсягу угоди, а також пріоритету платежу. Щоб уточнити час, який залишився для підтвердження (хоча б орієнтовно), можна зайти на спеціальний сервіс (наприклад, blockchain.info), після чого вказати в терміні пошуку ID операції.

Причин, чому не підтверджується транзакція біткоіни, безліч:

  1. Угода витісняється з блоку інший операцією, яка має пріоритет. Таке можливо, коли розмір елемента ланцюга підходить до граничного параметру, а переклад учасника мережі виявився останнім.
  2. Закінчується час «життя» платежу, що дорівнює 72 годинам.
  3. З’являється конфлікт між поточною операцією і інший угодою, яка раніше була підтверджена.
  4. Платіж замінюється відправником на інший платіж.

Операція, яка «видавлена» з блоку, може повернутися в сховище відправника (при отриманні статусу не відбулася транзакції) або зависнути. Іноді платіж направляється гаманцем знову і знову. У такій ситуації гроші «заморожуються» і застосувати їх уже не вийде. У гаманці з’являється інформація такого змісту «Status: 0 / unconfirmed, in memory pool».

Остання ситуація відбувається рідко. Як правило, після закінчення 3-х діб гроші повертаються на сховище відправника. Це відбувається в разі, якщо людина відправив невелику суму і виставив занадто низьку або нульову комісію.

Що робити, якщо зависла транзакція Bitcoin — всі варіанти

Зображення монети Bitcoin всередині комп'ютерної мережі

Зростання попиту на біткоіни і затримки з підтвердженням транзакцій привели до нового етапу обговорень проблем з мастштабіруемостью біткоіни. Поточного розміру блоку в 1 Мб недостатньо, щоб покрити потреби користувачів, які щодня здійснюють мільйони перекладів. Якщо виходити з того, що середній розмір операції дорівнює 0,5 КБ, в один блок вміщається 2000 угод, а реальних запитів в десятки разів більше. Як наслідок, в черговий вузол «пробиваються» великі платежі з високою комісією, а решта висять в статусі непідтверджених і чекають своєї черги. Нижче розглянемо, як діяти в ситуації, якщо зависла транзакція біткоіни.

Дочекатися проведення операції

Якщо ще є час, можна не форсувати події і просто почекати. Поширена причина затримки пов’язана із завантаженням мережі і обмеженим числом Майнер, що займаються формуванням чергового блоку. Якщо мережа не відрізняється високою волатильністю і не перевантажена, причиною може бути низька комісія. Дізнатися оптимальну премію можна за посиланням btc.com/stats/unconfirmed-tx. На 11 квітня 2018 року рекомендований розмір платежу дорівнює 0,00001 біткоіни за 1 Кб. Отже, при проведенні транзакції обсягом 500 Кб комісія повинна становити не менше 0,0005 BTC.

Заміна розміру премії (Replace by fee)

Для прискорення транзакції можна замінити комісії. Така можливість доступна відправнику коштів. Офіційна назва опції — Replace by fee (RBF). При її відсутності повторний переклад не пройде перевірку і буде відкинутий блокчейном. Це пов’язано з тим, що подвійна витрата одних і тих же засобів заборонена. Включення розглянутої опції інформує систему про те, що угода коректна.

Суть функції проста. Відомо, що платежі з меншою комісією проходять довше, ніж угоди, за які призначена вища премія. Якщо користувач збільшить винагороду, транзакція пересунеться вперед по черзі і буде проведена однією з перших. Така особливість носить назву «вибіркова заміна комісії» (Replace by fee). Суть в тому, що операція не змінюється — просто до неї додаються додаткові комісійні.

При проведенні такої маніпуляції важливо бути уважним, адже система може сприйняти дію з позиції подвійного витрачання і заблокувати проведення платежу. Якщо ж застосувати опцію RBF, шлюб транзакції виключений. При включенні функції мережу бачить операцію, яка має велику комісію, після чого угода переміщається вперед по черзі і швидше виконується.

Наявність такої опції ще не дає гарантії швидкого проведення переказу, адже це залежить від Майнер, які формують блоки. Причина в тому, що не всі учасники мережі працюють з Replace by fee. Крім того, RBF актуальна не для всіх гаманців. Сьогодні вона підтримується гаманцями Електрум і ГрінАдрес. Що стосується Bitcoin Core, тут така функція доступна при включенні додаткових скриптів.

Щоб активувати опцію, досить зайти в гаманець і активувати опцію Replace by fee. Як правило, цього достатньо для прискорення переведення і виключення його зависання в мережі.

прискорювачі

Непідтверджені транзакції Bitcoin можна «проштовхнути» за допомогою спеціальних прискорювачів. Один з варіантів — майнінговий пул viaBTC, що дозволяє знизити час проведення переказу. Незважаючи на порівняльну «молодість», сервіс заслужив популярність у широких колах і часто застосовується для прискорення завислих угод в кріптовалютной мережі. Якщо транзакція не надходить одержувачу протягом доби і більше, допомога такого пулу буде корисна.

Недоліки viaBTC для прискорення транзакції Bitcoin:

  1. Сервіс складний в управлінні, тому перед застосуванням варто витратити час на розгляд його можливостей.
  2. Програма працює з невеликим числом транзакцій, що призводить до періодичних зависань в процесі застосування. На практиці прискорювач обробляє кілька угод протягом 60 хвилин, що обмежує його можливості.
  3. Зайти в пул вдається не завжди. Наприклад, 11 квітня 2018 року зі цим виникли проблеми. Система просить увійти на сторінку пізніше.
  4. У майбутньому за послуги майданчики буде стягуватися комісія, що залежить від розміру транзакції.

Для запуску прискорювача потрібно ID операції, а також введення каптчі. Сервіс вивчає введені відомості і ставить переклад в чергу. Якщо транзакція відзначена сервісом, вона переноситься в блок, отриманий пулом.

Альтернативою для розглянутого сайту є пул AntPool. Крім того, в Інтернеті можна знайти ресурси-агрегатори (наприклад, perenosi.com), розробляються боти-прискорювачі для месенджера телеграм (приклад @FastTXbot).

Подвійне витрачання (Double Spending)

Якщо зависла транзакція Bitcoin, можна застосувати ще одну методику — вдруге передати гроші тим же сервісом. Наприклад, учасник мережі бачить, що платіж не проходить протягом тривалого часу і знаходиться в підвішеному вигляді. Тут можна скористатися особливостями blockchain — проведенням відразу декількох операцій.

Суть в тому, що перевірка обсягу коштів на рахунку проводиться в певний момент часу. Якщо перший переклад виявився неуспішним, відправник має право поміняти деякі параметри, наприклад, збільшити розмір премії та провести платіж знову. Переживати, що обидві операції пройдуть, не варто. За правилами кріптовалютной мережі при відправці одного і того ж активу проводиться операція, що має більш вигідні умови для учасників мережі (Майнер). Решта аналоги знищуються. Єдиний ризик — розгалуження ланцюга, тому до застосування опції Double Spending варто підходити з обережністю.

Розглянемо, що необхідно зробити для застосування методики на прикладі Bitcoin Core. Відзначимо, що для інших гаманців підхід залишається аналогічним. Різниця може полягати в найменуванні команд, а загальна послідовність не змінюється. Алгоритм такий:

  1. Готуємося до проведення Double Spending. Для цього важливо переконатися, що транзакція зависла. Бувають випадки, коли угода підтверджена, але з різних причин не доходить до адресата. Для перевірки рекомендується використовувати згаданий раніше сайт blockchain.info. Якщо навпаки угоди є фраза «unconfirmed transaction», переходимо до подальших кроків. Крім того, можна звернути увагу на час проведення операції, але воно орієнтовний.
  2. Закриваємо програму-сховище біткоіни, після чого в командному рядку вводимо слово «zapwallettxes». Інші варіанти команд використовувати заборонено, адже можливо випадкове видалення ключа і втрата доступу до грошей.
  3. Очікуємо запуск гаманця. Після пуску в ньому вже не буде завислих транзакцій. Але не варто радіти завчасно, адже в кріптовалютной мережі вони ще збережені. До слова, користувачі Bitcoin Core старої версії 0.14 повинні поміняти ім’я або відправити документ mempool.dat в іншу папку, після чого заходити в програму.
  4. Проводимо нову угоду із зазначенням вищої комісії. Пам’ятайте, що ризик підтвердження колишньої угоди через якийсь час залишається. Щоб виключити таку ситуацію, в новому платежі важливо вказувати параметри, максимально схожі на проведену раніше (неуспішну) операцію. У такому випадку система не дозволить їй здійснитися. Наприклад, важливо прописати ідентичний розмір входу в Bitcoin (знайти необхідний параметр можна в розділі inputs). Що стосується розміру угоди, його можна збільшити для прискорення переведення.
  5. Заповнюємо необхідні поля за звичним планом (як при проведенні стандартної транзакції).
  6. Очікуємо завершення операції, яка повинна пройти швидше.

CPFP

Популярний метод «проштовхування» платежу — Child Pays for Parent. Він підходить в ситуації, коли застосовується сховище не дозволяє включити розглянуту вище опцію RBF. Мінус способу в тому, що за нього доведеться платити. Крім того, лише невелика кількість пулів підтримують застосування CPFP. Для «просування» угоди, з якої виникли труднощі, необхідно використовувати будь-який з виходів транзакції. Важливо, щоб суми на рахунку було достатньо для проведення двох операцій.

Суть в тому, що відправник формує ще один переклад із застосуванням виходу для оформлення нової транзакції. Відправка біткоіни може здійснюватися по будь-якою адресою. Головне — використовувати здачу з завислого платежу. Не менш важливий нюанс — розмір комісійної виплати, який повинен прописуватися відразу для двох операцій.

Розглянемо застосування цього методу на прикладі гаманця Bitcoin Core. Початкове умова — транзакція розміром 0,095 біткоіни. Алгоритм такий:

  1. Переходимо в розділ налаштувань і вибираємо кнопку параметрів.
  2. Входимо в підкатегорію «Гаманець» і включаємо управління входами (встановлюється відмітка у спеціальному полі). Тут же ставимо позначку, дозволивши витрачати непідтверджену здачу. Бувають ситуації, коли згадані галочки вже встановлені (в такому випадку нічого не змінюємо).
  3. Закриваємо вікно і тиснемо на кнопку відправки.
  4. Переходимо в розділ входів і ставимо позначку навпроти цікавить суми (в нашому випадку 0,095 BTC).
  5. Вказуємо адресу сторони, яка отримує, після чого схвалюємо дії, натисканням на кнопку «ОК».
  6. Ставимо число 0,095 і тиснемо на позначку навпроти команди «Відняти комісію з суми». Тут же відзначаємо вибірковий комісійний платіж за кілобайт. Важливо відзначити, що премія обчислюється з розрахунку проведення двох угод. Обчислення здійснюється наступним чином. Спочатку величина колишньої операції ділиться на розмір нового платежу. До отриманого числа додається одиниця, а підсумок множиться на оптимальну комісію за 1 Кб.

Як зазначалося, не всі пули працюють з цією схемою, але при наявності такої опції варто їй скористатися.

Динамічна зміна комісії

Одна з причин, чому не підтверджується транзакція Bitcoin — низька комісія. Щоб змінити ситуацію на свою користь, можна провести динамічна зміна цього параметра через гаманець. Для цього гаманець повинен підтримувати подібну функцію. Суть спеціальних сховищ в тому, що вони автоматично вважають оптимальний розмір винагороди, при якому операція в кріптовалютной мережі проходить швидше. Якщо власник гаманця згоден із запропонованим параметром, угода без затримок включається в черговий блок.

Динамічна правка комісії дозволяє обчислити пріоритет угоди. Тут підхід простий. Чим більше премія, тим вище пріоритетність. Розглянуте правило особливо актуально в періоди максимального завантаження мережі. Якщо користувач вказав високу винагороду, а транзакція все одно зависає, це вимагає прийняття термінових дій. Часто проблема пов’язана із застосуванням старих версій гаманців для Bitcoin. В такому випадку є два шляхи — оновити існуючий або встановити новий гаманець.

Відкат непідтвердженою транзакції

Ще один спосіб вирішити проблему з зависанням — скасувати транзакцію Bitcoin. Наприклад, у випадку з Bitcoin Core потрібно зробити наступне:

  1. Переконуємося через сайт blockchain, що угода не підтверджена.
  2. Входимо в гаманець, а далі в розділ налагодження, для чого переходимо по шляху «допомога, налагоджувальне вікно і консоль». Якщо гаманець шифрувати, до нього потрібно доступ. Для цього вводиться команда walletpassphrase.
  3. Отримуємо персональний ключ від необхідного адреси. Для цього вказуємо фразу dumpprivkey. Слово в фігурних дужках міняємо на адресу, використаний для проведення транзакції. Отриманий ключ потрібно копіювати в окреме місце. У випадку з групової операцією, коли Bitcoin відправлялися з декількох акаунтів, потрібні ключі для кожного з них. Наявність під рукою цих даних відкриває доступ до рахунку.
  4. Закриваємо кабінет і видаляємо гаманець. Єдине, що варто зберегти — wallet.dat. Цей файл рекомендується заздалегідь перейменувати і перемістити в іншу папку.
  5. Перезапускаємо програму, і чекаємо створення нового гаманця. Вставляємо в нього отримані ключі, переходимо в панель налагодження і прописуємо importprivkey. Перенесення відомостей займає певний час. Важливо, щоб процес не переривався.
  6. Перевіряємо рахунок. Завислі операції видаляються, а блоковані гроші доступні для перерахування. Тепер можна знову оформляти транзакцію, але вже з більш високою комісією.

Розглянутий метод не дає результату в разі застосування хмарного сховища для проведення переказу.

Як захиститися від непідтверджених транзакцій біткоіни?

Сині монети біткоіни і бінарний код

Щоб убезпечити себе від проблем з завислими транзакціями Bitcoin в майбутньому, потрібно зробити наступне:

  1. Відразу виставляти оптимальну премію за проведення транзакції. Бажання заощадити може вилитися в тривалі витрати часу на очікування підтвердження операції. Відразу визначитеся, що важливіше — швидкість або економія.
  2. Перед проведенням транзакції важливо включити опцію RBF, про яку згадувалося вище. Далі при проведенні операцій через гаманець рекомендується робити позначки Replaceable. Але варто переконатися, що гаманцем підтримується така опція.

Якщо виставлена ​​адекватна комісія, але транзакція все одно зависла, не діяти не можна. В такому випадку високий ризик зависання перекладу на тривалий час. Щоб вирішити проблему, стануть в нагоді методи, які розглянуті в статті. Головне — не панікувати, адже затримка операції є звичайною справою в кріптовалютной мережі біткоіни. Спочатку потрібно розібратися з причиною появи проблеми, а вже після приступати до її вирішення. Як правило, допомагає прискорювач або подвійна витрата. Але краще не допускати таких затримок і відразу виставляти актуальну комісію.

Що робити, якщо зависла транзакція Bitcoin, дивіться в наступному відео:


Ссылка на основную публикацию