Транзакция Биткоин. Часть 2

Отследить транзакцию биткоин можно на одном из специальных онлайн-сервисов, которые называются обозреватели блокчейн (blockchain explorer). Для этого необходимо знать идентификатор транзакции, то есть её хэш. Хэш транзакции вводится в специальную строку обозревателя блокчейн, после чего система находит данную транзакцию среди множества других и выдаёт полную информацию о ней на экран, включая статус транзакции – подтвержденная или неподтвержденная.


обозреватели блокчейн

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

После того как транзакция была подписана пользователем, она попадает в мемпул (общий электронный реестр неподтвержденных биткойн транзакций), где некоторое время ожидает своей очереди на включение в блок. Ранжирование транзакций в мемпуле производится в зависимости от установленных за них комиссий. Чем больше комиссия, тем выше позиция транзакции и больше её шансы на быстрое подтверждение.
Текущий статус транзакции отображается в обозревателе блокчейн. После внесения хэша в поисковую строку в открывшемся окне появится необходимая информация: рядом со строкой, описывающей состояние транзакции, будет расположено поле и цифра на ней означают, что транзакция подтверждена, при этом цифра означает количество подтверждений.

подтверждения сети

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

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

Скорость подтверждения транзакции зависит от следующих факторов:

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

 Самым определяющим фактором для скорости передачи транзакции является размер её комиссии. Общая комиссия за перевод криптовалюты в системе Биткойн определяется как произведение веса транзакции на стоимость передачи объема данных в сети (сатоши за 1 байт). Поскольку стоимость передачи данных не является постоянной величиной, актуальное значение комиссии следует уточнять в обозревателе блокчейн. Чтобы ускорить подтверждение транзакции, рекомендуется устанавливать комиссию выше актуальной.

Что делать, если транзакция зависла

Если транзакция надолго зависла в сети, можно поступить следующим образом:

  1.  Ожидать подтверждения;
  2.  Ожидать отмены транзакции;
  3.  Увеличить транзакцию комиссии, пока она находится в мемпуле, при помощи специальных опций:
  • replace by fee (RBF);
  • child pays for parent (CPFP).

     4. Использовать специальные сервисы-ускорители.

Опция Replace-by-Fee
Опция replace by fee (RBF) позволяет отредактировать уже существующую транзакцию, пока она находится в мемпуле. Редактирование заключается в изменении размера комиссии, при этом «входы» и «выходы» остаются прежними. В сети такая отредактированная транзакция будет воспринята как старая и после повышения комиссии она будет помещена на одну из верхних позиций в очереди.

Процесс изменения комиссии выполняется в несколько этапов:

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

Следует учесть, что функция RBF доступна не во всех криптокошельках. Кроме того, в некоторых кошельках она может быть предусмотрена функционалом, но не активирована. Поэтому важно, выбирая кошелек для пользования, сразу проверить наличие этой опции, а перед началом работы обязательно её активировать.

Опция Сhild pays for parent
Еще одним популярным способом ускорения транзакции является child pays for parent (CPFP), который в буквальном переводе называется «ребенок платит за родителя». Основной принцип данной методики заключается в том, что пользователь на основе предыдущей транзакции создает новую дочернюю с гораздо более высоким значением комиссии.

Как работает Child Pays For Parent. Как использовать «сдачу».

Часто бывает так, что на «входе» у отправителя имеется гораздо больше монет, чем он планирует передать получателю. Однако по правилам системы Биткойн при формировании транзакции содержимое «входа» должно быть использовано полностью, в связи с чем отправитель вынужден указывать при оформлении криптоперевода общую сумму имеющихся у него на данном «входе» биткоинов, включая излишек.
Разработчики криптокошельков решили эту проблему и предусмотрели опцию «сдача»: зафиксировав разницу в количестве криптовалюты на «входе» и «выходе», кошелек в автоматическом режиме формирует второй «выход» для возврата лишней суммы назад отправителю. Эта функция называется «сдача» и может быть использована при проведении любых транзакций. Она также нашла применение в методике Child Pays For Parent (далее CPFP).

Опция CPFP работает по следующей схеме:

• Если в очереди на подтверждение зависла транзакция (далее «родительская» транзакция), для которой насчитана определенная «сдача», эту «сдачу» отправитель может использовать для формирования новой «дочерней» транзакции с гораздо более высоким значением комиссии. При этом важно, чтобы комиссия «дочерней» транзакции покрывала комиссию, необходимую для обработки обеих транзакций (родительской и дочерней).

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

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

Ускорители транзакции – это специальные сервисы, которые за определенную плату обеспечивают включение данной конкретной транзакции в блок, не дожидаясь общей очереди, и таким образом помогают быстрее её подтвердить. Для того чтобы воспользоваться данными сервисами, необходимо знать хэш транзакции.
Стоимость за услугу ускорения в различных сервисах может отличаться. Некоторые из них взимают плату только за транзакции с очень низкими значениями комиссий или за очень срочные переводы. Также определенную плату ускоритель может потребовать за транзакцию, вес которой составляет более 250 байт.