Як скасувати транзакцію, якщо випадково відправили кошти
Що робити, якщо ваша транзакція вже підписана і відображається в експлорері? Якщо ви шукаєте коротку відповідь - у більшості випадків скасування транзакції в блокчейні просто-напросто неможливе. Але є деякі випадки, коли скасувати транзакції вийде. Детальніше про це редакція ITstatti.in.ua розповість у цій статті.
Чи можливо скасувати транзакцію?
Транзакцію в блокчейні не може бути скасовано через особливості роботи самої технології: кожна транзакція є частиною ланцюжка блоків, що зберігаються на безлічі вузлів мережі; кожен блок містить хеш попереднього блоку та інформацію про нові додані транзакції.
Коли транзакцію відправлено в мережу, вона проходить через процес перевірки та підтвердження іншими учасниками мережі - майнерами. Майнери розв'язують складні математичні задачі, щоб додати новий блок у ланцюжок і отримати винагороду за свою роботу. Щойно транзакцію було додано в блок, вона стає незмінною і її не можна видалити або змінити. Це відбувається тому, що кожен блок у ланцюжку містить хеш попереднього блоку, і будь-яка зміна в одному блоці вплине на всі наступні блоки в ланцюжку.
Таким чином, якби була можливість скасувати транзакцію, це призвело б до порушення цілісності всього ланцюжка блоків, що неможливо. Тому в блокчейні немає механізму скасування транзакцій, і кожен учасник мережі має бути уважним під час надсилання коштів або передачі активів.
Скасування та заміна транзакції
У більшості випадків ми не можемо скасувати транзакцію. Однак є виняток.
Ви можете скасувати або замінити свою транзакцію, якщо вона перебуває в статусі Pending. Важливо: такі транзакції відображаються в експлорерах EVM мереж і TRON.
Як це зробити:
- У кожної транзакції, відправленої з вашої адреси, є унікальний номер, він називається Nonce.
- В Ethereum Nonce є номером, який є унікальним для кожної транзакції та збільшується на 1 щоразу, коли транзакцію відправляють із певної адреси. Nonce використовується для безпечного передавання інформації та запобігання атакам із використанням перехоплених записів.
- Якщо ваша транзакція зависла в статусі Pending, то ви можете надіслати транзакцію на суму 0 ETH на свою власну адресу з тим самим значенням Nonce і вищою ціною газу. Це скасує вашу першу транзакцію.
ВАЖЛИВО! Це не 100% варіант скасувати вашу транзакцію. Є ймовірність, що ви не встигнете, а в блокчейн відправляться обидві транзакції.
Як перевірити статус транзакції
Скопіюйте хеш транзакції та перевірте її через експлорер.
У транзакції може бути 4 статуси:
- Success (Успішна транзакція)
Цю транзакцію записано в блокчейн. Змінити цю транзакцію неможливо.
- Failed (Неуспішна транзакція)
Цю транзакцію було скасовано. Причин на це може бути безліч, найчастіша - нестача газу для сплати.
- Transaction not found (Транзакція не знайдена)
Рідкісна помилка, в більшості випадків помилка полягає в хеші, можливо ви неправильно його скопіювали. Якщо ви все вірно скопіювали, значить транзакція не була здійснена.
- Pending (Транзакція в очікуванні)
Вашу транзакцію виявлено в пулі транзакцій використовуваного оглядача. Наразі вона перебуває в очікуванні (очікує, поки її добудуть майнери). Є шанс, що ви можете скасувати або замінити цю транзакцію, але він дуже малий.
Що таке Token Approval і як він може «скасувати» транзакцію
Для використання децентралізованих застосунків необхідно дати доступ до вашого веб-гаманця через два запити: перший дає змогу застосунку бачити ваш баланс і активність, а другий - безпосередньо взаємодіяти з вашою криптовалютою для здійснення транзакцій.
Однак такий дозвіл може бути використаний зловмисниками, тому задля безпеки свого гаманця ніколи не давайте проєктам необмежений доступ до вашої криптовалюти та періодично перевіряйте й скасовуйте видані схвалення, якщо не збираєтеся використовувати застосунок, більше не довіряєте йому або видали дозвіл випадково.
Управління Token Approval відбувається через сервіс revoke.cash. Якщо підключити свою адресу до цього сервісу, ви отримаєте список усіх токенів, яким ви видали Approve. Ви також можете відключити використання певних смарт-контрактів токенів. Таким чином ви можете обмежити використання певних токенів на вашій адресі.
ВАЖЛИВО! Відключення використання токенів після здійснення транзакції не скасує транзакцію. Цей спосіб може допомогти тільки в тому випадку, якщо токен був відключений від Approve, а ви намагаєтеся провести з ним транзакцію.
Читайте також - Що таке токеноміка.
Вітаю всіх на нашому інтернет-журналі. Я - Вольдемар Воронцовський. Цей матеріал написаний і опублікований одним з наших авторів (експертом у своїй справі). За кожною статтею стоїть досвідчений співробітник нашої команди, який перевірив матеріал на помилки і актуальність. Познайомитися з нами можна в розділі - «Редакція сайту».