Збій автоматизації: біткоїн-гаманець втратив $102 000 на комісії за переказ
У світі криптовалют автоматизація — це палка з двома кінцями. Черговий інцидент це підтвердив: власник біткоїн-гаманця втратив понад $102 000 (1,6 BTC) як комісію за транзакцію, яка так і не досягла адресата. Кошти були списані, але отримувач не отримав жодного сатоші.
Інцидент стався 12 серпня і був зафіксований у блоці 962 142. Аналіз даних блокчейну показує, що на вхід транзакції надійшло 160 343 885 сатоші, і вся ця сума повністю пішла майнерам. Вихід транзакції виявився порожнім — класичний приклад «спалених» коштів.
Корінь проблеми: RBF-скрипт вийшов з-під контролю
Винен у цій ситуації автоматизований скрипт із функцією Replace-by-Fee (RBF). Механізм RBF дозволяє замінити непідтверджену транзакцію на нову з вищою комісією, щоб прискорити її проходження в мемпулі. Це корисний інструмент, коли мережа перевантажена, а комісії зростають щохвилини.
Однак цього разу сценарій дав збій. Замість того щоб зупинитися на розумному рівні, бот почав підвищувати комісію щосекунди, «з'їдаючи» з балансу все більше коштів. Протокол Біткоїна не обмежує розмір комісії, яку відправник готовий заплатити майнерам, тому транзакція була прийнята мережею, незважаючи на абсурдність ситуації. У підсумку весь вхід транзакції пішов на комісію, а майнери отримали щедрий подарунок.
Блок, до якого потрапила ця транзакція, був видобутий пулом SpiderPool. Загальна комісія в цьому блоці склала близько 1,82 BTC, і 88% цієї суми припало на одну помилкову транзакцію. Для майнерів, які зараз переживають не найкращі часи через падіння дохідності, це справжня удача.
Як захиститися від подібних помилок?
Цей випадок — важливе нагадування про базові правила безпеки під час роботи з криптовалютами. По-перше, завжди вимикайте автоматичне підвищення комісії через RBF. Ручне підтвердження кожної транзакції — це бар'єр, який захистить вас від бездумних дій скрипта.
По-друге, встановіть жорсткий ліміт на комісію. Більшість сучасних гаманців дозволяють вказати максимальну кількість сатоші за байт, і цього обмеження може бути достатньо, щоб зупинити несправний бот. По-третє, після кожного оновлення програмного забезпечення гаманця проводьте тестові транзакції на невелику суму. Пара тисяч сатоші — це незначна плата за перевірку працездатності системи.
Ця ситуація також піднімає важливе питання до розробників гаманців: чи повинен гаманець взагалі допускати витрату всієї суми на комісію в межах однієї транзакції? Очевидно, що ні — і це технічне обмеження могло б запобігти подібним втратам.
Поки біткоїн торгується поблизу $63 770, така помилка обходиться особливо дорого. Втрата понад $100 000 — це не просто неприємність, а катастрофа, яку можна було запобігти. Автоматизація в гаманцях потребує такого ж ретельного контролю, як і зберігання сид-фрази. Бездумний скрипт може спустошити рахунок швидше, ніж будь-який хакер.
Мій висновок: довіряйте автоматизації, але перевіряйте її. Криптовалюта не прощає недбалості, і цей випадок — чергове тому підтвердження. Розробникам варто задуматися про введення «запобіжників» у протоколи гаманців, щоб подібні помилки стали неможливими.