Неподтвержденные транзакции blockchain: что это и как исправить

Неподтвержденные транзакции blockchain

Любая операция (перевод, вывод, пополнение, оплата и т. д.) в системе blockchain – составная часть, формирующая новый блок в цепочке. Транзакция включает 3 элемента:

  • Input (адрес отправителя);
  • Amount (сумма);
  • Output (адрес получателя).

Для подтверждения транзакции требуются:

  • адресат;
  • ключ.

Сформированная операция отправляется в мемпул, где дожидается подтверждения от валидаторов. За осуществление транзакции отправитель платит комиссию, которая устанавливается платежной системой. В некоторых сервисах пользователь самостоятельно устанавливает размер комиссионного вознаграждения. Валидаторам (майнерам) выгоднее обрабатывать транзакции с большей комиссией, поэтому они идут в первую очередь.

Что такое неподтвержденная транзакция

Операции, которые по каким-либо причинам не добавились в блок, называются неподтвержденными. Проблемы, связанные с неприсоединением к новому блоку, часто возникают, из-за отсутствия высокого комиссионного вознаграждения.

Выяснить текущий статус проведения сделки можно на официальном сайте сервиса blockchain.com. В строку поиска вводятся идентификационную информацию по транзакции. Если операция не имеет подтверждения, то высветится надпись Unconfirmed Transaction.

Каковы причины зависания

Существует 4 основные причины возникновения неподтвержденных транзакций в блокчейне:

  1. Пользовательская ошибка. Часто новички допускают неточности при оформлении операции, которые могут повлечь сбой в системе, и транзакция не будет подтверждена.
  2. Сумма комиссионных. В сети BTC операции с большим вознаграждением в приоритете. Большинство платежных систем (Blockchain.com, Bitcoin Core) автоматически выставляют пользователю рекомендуемую комиссию, которую он может принять или изменить. Если вознаграждение слишком маленькая, валидаторы игнорируют ее. Сбор не зависит от суммы перевода и может превышать размер транзакции. Он формируется на основе емкости перевода в байтах.
  3. Перегрузка сети. Из-за увеличения количества пользователей и их активности, возникает перегруз сети. В этой ситуации даже большая комиссия может не решить проблему. Иногда обстановка усложняется спам-атаками.
  4. Лимиты по размерам блоков. Проблемы с транзакциями в сети BTC летом 2017 г. возникли, из-за небольшого размера блоков (1 Мб). Этого не хватало, чтобы вмещать информацию, которой стало в разы больше, из-за возросшей популярности цифровой валюты. Аналогичные проблемы с масштабируемостью возможны у других криптовалют.

После «бума» криптоиндустрии в 2017 г. руководство многих блокчейн-стартапов стало задумываться об увеличении размера блоков или поиске иных способов решения проблемы.

Как исправить ситуацию

Неподтвержденная транзакция не означает, что деньги пропали. Поэтому есть варианта развития событий:

  1. Пассивный. Пользователь ждет, когда дойдет очередь до его операции.
  2. Активный. Отправитель принимает меры для ускорения перевода.

В первом сценарии никаких действий не требуется, достаточно ждать завершения операции. Процесс может занять несколько часов, дней, недель и даже месяцев. Выяснить длительность ожидания можно несколькими способами:

  • blockchain.com;
  • bitaps.com;
  • blocktrail.com.

Цифры, предоставленные на этих сайтах, редко соответствуют действительности. Для получения оптимальных данных лучше произвести собственные расчеты. Алгоритм действий:

  1. Скопировать цифровой код из строчки Fee per byte в описании транзакции.
  2. Войти на официальный сайт btc.com.
  3. Перейти в раздел «Статистика» «Неподтвержденные транзакции» (unconfirmed transactions).

Откроется страница, где есть данные о мемпуле и актуальном размере комиссии за проведение операции.

Выборочная замена комиссии

Если отправитель не желает ждать неопределенное время, пока операция завершится, необходимо действовать. Проще всего повысить комиссию до нужного уровня, чтобы транзакция поднялась в списке очереди.

Выборочная замена комиссии или Opt-In Replace-by-Fee позволит добавить комиссионные к существующей операции. Нужна осторожность, поскольку сеть может заблокировать отредактированную сделку, посчитав ее, как попытку двойного расхода.

Не все майнеры работают с Opt-In RBF, что необходимо учитывать. Чтобы возможность изменения комиссии сработала, в личном кабинете кошелька нужно активировать функцию выборочной замены комиссии.

Кошельки с возможностью Opt-In RBF:

  • Bitcoin Core;
  • Armory;
  • Electrum;
  • GreenAdress.

В последнем из них функция включается по умолчанию, в остальных необходимо вручную задать нужные настройки.

Двойное расходование

Двойная трата (Double-spending) – повторная отправка перевода с указанием идентичных данных. Чтобы создать новую транзакцию, нужно на 100% убедиться в неподтвержденности транзакции.

Дальнейший алгоритм действий:

  1. Закрыть кошелек и открыть его по-новому через командную строку. При использовании Bitcoin Core потребуется установка параметра zapwallettxes. Иногда необходимо переименовать или скопировать файл mempool.dat.
  2. Открытие новой операции с более высоким комиссионным вознаграждением.
  3. Во избежание подтверждения первой транзакции, которая остается активной, задается идентичный старому размер входа для новой транзакции. Дополнительно добавляются новые входы для перекрытия суммы предыдущей операции и комиссии.
  4. Завершение отправки.

На практике в большинстве случаев установка дополнительных параметров не требуется, поскольку приоритетность транзакции с увеличенным вознаграждением больше.

Применение CPFP

Этот вариант оптимален для получателя переводов. Отправитель может воспользоваться им, если операция осуществлена со сдачей. Особенность – майнеры берут транзакций с небольшой комиссией, которые в совокупности дают высокое вознаграждение.

Child Pays for Parent (CPFP) – способ ускорения проведения операции. Суть заключается в открытии новой транзакции с «условным» использованием монет, полученных от неподтвержденного перевода. Комиссия устанавливается достаточная для проведения 2 операций. Чтобы провести новую транзакцию валидаторам придется сначала подтвердить старую.

Пошаговая инструкция действий:

  1. Зайти в личный кабинет кошелька.
  2. Выставить параметры, разрешающие управлять входами и расходовать неподтвержденную сдачу.
  3. Открыть новую транзакцию, где входом новой будет служить выход старой. Допускается указание «сдачи».
  4. Вычислить оптимальный размер транзакции для обеих операций.

Майнеры примут обе операции, получив удовлетворительную комиссию, а отправитель – включение операций в блок.

Динамическое изменение комиссии

Термин подразумевает специальную функцию кошелька, автоматически устраняющую риск зависаний. Платежная система самостоятельно вычисляет оптимальный размер комиссии для успешного проведения операции.

Если комиссия, указанная отправителем, не соответствует, то сервис оповестит пользователя о необходимости увеличения. Функция доступна во многих популярных кошельках:

  • Bitcoin Core;
  • Ledger;
  • Electrum;
  • Airbitz;
  • GreenAddress.

Они могут увеличивать или снижать комиссию при необходимости. Если зависания все-таки появились, рекомендуется обновить кошелек.

Ускорение транзакций

Существуют специальные сервисы для ускорения проведения переводов. Самые востребованные:

  • antpool.com;
  • viabtc.com.

Чтобы ускорить процесс, нужно на сайте ввести идентификационные данные транзакции и вписать капчу.
Система автоматически ускорит процесс и поставит перевод в доступный блок, который уже расшифрован пулом. Чтобы использовать ускоритель, рекомендуется осуществлять открытые транзакции, но с конфиденциальностью операций можно попрощаться.

Как защититься от зависаний

Чтобы обезопаситься от неподтвержденных транзакций, следует:

  1. Устанавливать оптимальный размер комиссии.
  2. Работать с кошельками, имеющими функцию динамического изменения комиссии. Следовать рекомендациям системы.
  3. Активировать возможность выборочной замены вознаграждения. В дополнение используется мультиподпись.
  4. Применять системы, оснащенные независимой системой операций.

Отмена неподтвержденных транзакций невозможна, поэтому при возникновении зависаний придется прибегать к «уловкам», способствующим ускорению процесса. При необходимости перевода криптовалюты, заработанной на инвестициях или майнинге на видеокартах, в кошельке заранее устанавливаются нужные параметры.

ТОП
Понравилась статья? Поделиться с друзьями:
Богатейший Сатоши