Разработчик «сломал» NFT на Биткоине. В чём особенность неприятного бага платформы Ordinals?
В сообществе трендового проекта Ordinals произошёл серьёзный скандал. Поводом для него стали действия разработчика под ником Supertestnet, который провёл необычную транзакцию и таким образом по сути сломал систему нумерации проекта. Произошедшее стало причиной для сомнений о том, насколько вообще Ordinals может быть безопасным и надёжным в долгосрочной перспективе. Рассказываем о происходящем подробнее.
Ordinals — протокол, который позволяет привязывать к определённым сатоши или 0.00000001 BTC контент в виде текста, изображений, видео и так далее. Фишка данного способа заключается как раз в использовании сатсов, которые нельзя разделить. В результате этого за наименьшей неделимой частицой BTC по сути навсегда закрепляется изображение или что-то другое.
NFT в сети Биткоина были запущены в январе 2023 года. С тех пор общее число созданных «токенов» превысило отметку в 3.87 миллиона единиц.
Общее количество NFT на базе протокола Ordinals в сети Биткоина
Рекорд числа созданных NFT за сутки был установлен на этой неделе в понедельник. Тогда любители криптовалюты создали 372 тысячи NFT на базе Ordinals.
Масштабы создания новых NFT на базе протокола Ordinals в сети Биткоина за сутки
Однако накануне протокол столкнулся с проблемами, которые возникли из-за действий определённого разработчика. И хотя они не угрожают работоспособности протокола, ситуация в любом случае получилась необычной.
Что случилось с NFT в Биткоине?
В целом протокол Ordinals — это система нумерации, присваивающая каждому сатоши серийный номер, который отслеживается в ходе проведения транзакций. Иными словами, проект позволяет делать отдельные сатоши уникальными и таким образом создаёт набор функций для запуска NFT на основе Биткоина без каких-либо сторонних сетей. Уникальная нумерация сатоши позволяет прикрепить к каждому из них данные, будь то изображение, текст или что-то другое.
Сатоши нумеруются не случайно, а в определённом порядке их создания. Соответственно, после первого NFT идёт второй — и так далее. И как раз разработчик под ником Supertestnet из-за своих действий внёс неразбериху в данный порядок.
Динамика средней комиссии за транзакцию в BTC за год
Ordinals используется для фиксации в блокчейне широкого набора данных — от простых пиксельных артов до видеоигр. Тот факт, что для Ordinals нужен только блокчейн Биткоина и ничего больше, можно рассматривать как минус проекта. Всё же из-за роста активности в Ordinals растёт загруженность блокчейна, что приводит к увеличению средней комиссии за каждую транзакцию в BTC.
Как мы отметили накануне, средний уровень комиссий в сети Биткоина накануне достиг максимума за два года. Это значит, что активность пользователей действительно перегружает возможности блокчейна, из-за чего они вынуждены платить больше за быстрое попадание их транзакций в блокчейн.
Сейчас комиссии в сети Биткоина находятся на максимуме за два года
Но у Ordinals есть и свои плюсы, ведь проект «вдохнул жизнь» в сообщество как обычных фанатов криптовалют, так и лагерь поклонников исключительно Биткоин. Все они получили нечто новое непосредственно в сети BTC, которая за всё время существования криптовалюты использовалась лишь для передачи ценности. То есть глобальные инновации в экосистеме BTC случаются очень редко.
Проблемы протокола Ordinals?
Для начала разберёмся с особенностями перевода транзакций в Биткоине. В теории любой пользователь криптовалюты может послать транзакцию в размере 0 BTC — то есть без единого сатоши — но при этом он всё равно заплатит комиссию майнерам из этого перевода. На практике подобные транзакции считаются «нестандартными» – они автоматически отклоняются большинством нод в сети Биткоина.
Однако это ограничение можно обойти, попросив майнеров напрямую обработать «нулевую» транзакцию. На своей странице на платформе GitHub Supertestnet пишет, что у майнинговых пулов есть свои чаты в Telegram, где некоторые майнеры готовы помочь с проведением подобного перевода. И вот мы подошли к его главной особенности – отсутствию входов и выходов.
«Нулевая» транзакция
Когда пользователь отправляет обычную транзакцию в BTC, создаются её входы и выходы. Первое – это имеющиеся в кошельке монеты, полученные в предыдущих входящих платежах, которые отправляются в транзакции. При отправке перевода создаётся исходящий платёж на нужную сумму, который называется выходом. Выходы одной транзакции затем используются кошельком-получателем как входы новых транзакций — и так далее.
Согласно данным источников Decrypt, Supertestnet путём создания «нулевой» транзакции не создал её входы и выходы, что стало причиной сбоя в нумерации сатоши Ordinals. Более того, он даже создал раздел на GitHub, посвящённый проблеме. А значит в теории любой желающий может провести такую своеобразную атаку на протокол.
Supertestnet скромно назвал себя «Уничтожителем джипегов», то есть картинок в блокчейне
Впрочем, проблема не столь важна, как кажется многим – об этом в Твиттере написал любитель криптовалют по имени Дэнни Дикроегер. По его словам, номера сатоши сами по себе уже не несут в себе никакой ценности, так как Supertestnet удалось «сломать логику» протокола. В любом случае, если сообщество вовсе откажется от этой концепции, ничего страшного якобы не случится, поскольку созданные NFT в сети Биткоина продолжат успешно существовать и работать.
Мы считаем, что данная ситуация отражает не только креативность разработчика, но и общее состояние индустрии криптовалют. И хотя последняя существует с 2009 года, в ней по-прежнему появляются новые сферы, в которых при этом находятся уязвимости. А это говорит о правильном направлении активности девелоперов, которые не сидят на месте и продолжают искать новые варианты применения цифровых активов и блокчейна.