Ноль подтверждений: повышение комиссий в сети биткоин

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

Специалисты компании Distributed Lab подготовили специально для Forklog материал, разъясняющий особенности этого вопроса.

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

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

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

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

Среднее время подтверждения транзакций в сети [по данным Blockchain.info]

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

Следующий этап состоит в том, чтобы дать возможность пользователю максимально кастомизировать комиссию за свою транзакцию. Это осуществляется посредством выбора из трех приоритетов для транзакции, которые основаны на оптимальной в данный момент комиссии. Таким образом, если вы хотите, чтобы транзакция подтвердилась быстрее, вы можете повысить приоритет до среднего или высокого. При формировании приоритетов, алгоритм ориентируется на то, что транзакция со средним приоритетом должна с вероятностью 50% попасть в первые два блока, найденных после ее отправки.

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

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

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

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

Количество транзакций ожидающих подтверждения [по данным Blockchain.info]

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

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

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

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

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

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

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

Подписывайтесь на ForkLog в социальных сетях

Telegram (основной канал) Discord Instagram
Нашли ошибку в тексте? Выделите ее и нажмите CTRL+ENTER

Рассылки ForkLog: держите руку на пульсе биткоин-индустрии!

*Ежедневная рассылка — краткая сводка наиболее важных новостей предыдущего дня. Чтение занимает не больше двух минут. Выходит в рабочие дни в 06:00 (UTC)
*Еженедельная рассылка — объясняем, кто и как изменил индустрию за неделю. Идеально подходит для тех, кто не успевает за новостным потоком в течение дня. Выходит в пятницу в 16:00 (UTC).

Мы используем файлы cookie для улучшения качества работы.

Пользуясь сайтом, вы соглашаетесь с Политикой приватности.

OK
Exit mobile version