Проклятые надписи в Ordinals: история, категории и влияние

Дата публикации:  13:23:20 ()

В последние годы протокол Ordinals открыл возможность «чеканить» NFT‑подобные объекты непосредственно в сатоши – наименьшие единицы биткойна. Вместе с этим появился новый тип артефактов‚ получивший название проклятые надписи (cursed inscriptions) или негативные надписи. В статье рассмотрим‚ что это за явление‚ как оно возникло‚ какие категории включает и какие последствия имеет для пользователей и разработчиков.

Содержание

  1. Что такое проклятие на подпись?
  2. История появления ошибки
  3. Технические детали протокола Ordinals
  4. Четыре категории проклятых надписей
  5. Влияние на экосистему
  6. Как обнаружить и работать с проклятыми надписями
  7. Перспективы и планы по исправлению

Что такое проклятие на подпись?

Проклятая надпись – это надпись‚ не проиндексированная протоколом Ordinals из‑за различных ошибок в процессе её создания. Несмотря на то‚ что такие надписи записываются в блокчейн Bitcoin и остаются там навсегда‚ они не получают положительного порядкового номера и‚ следовательно‚ не отображаются в обычных обозревателях Ordinals.

Для сохранения совместимости с уже существующей системой нумерации Кейси (основатель Ordinals) ввёл понятие отрицательных надписей. Проклятые надписи получают отрицательные индексы‚ что позволяет отличать их от «благословлённых» (рабочих) надписей‚ не нарушая последовательность уже выданных номеров.

История появления ошибки

Согласно Github Issue #2045‚ в начале марта 2023 года при обновлении номерации Ordinals возникла системная ошибка:

  • Протокол рассчитывал надписи только по первому входу транзакции.
  • Если в транзакции было несколько входов с надписями‚ остальные надписи оставались без номеров.
  • Такие «потерянные» надписи нельзя было найти через индексы‚ хотя они полностью записаны в блокчейне.

Сообщества The Oridcord и Ordinals быстро отреагировали‚ назвав их «ошибками и сиротскими надписями». Позднее термин проклятая надпись закрепился в официальных обсуждениях разработчиков.

Технические детали протокола Ordinals

Для понимания причины возникновения проклятых надписей полезно вспомнить базовые принципы Ordinals:

  1. Каждый сатоши (sat) в сети Bitcoin уникально пронумерован по порядковой теории.
  2. Надпись (inscription) – это вложенный JSON‑текст‚ который «гравируется» в выбранный сатоши.
  3. Надписи могут передаваться‚ храниться и торговаться‚ подобно NFT.

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

Четыре категории проклятых надписей

По словам Кейси в Github Issues #2045 и #2693‚ в текущий момент к проклятым надписям относятся следующие типы:

  • Транзакция‚ содержащая несколько надписей – только первая надпись получает индекс‚ остальные остаются «проклятыми».
  • Надписи с использованием поля указателя (pointer) – если указатель ссылается на неверный или отсутствующий объект‚ надпись считается ошибочной.
  • Надписи‚ метаданные которых превышают 520 байт – ограничение связано с размером скриптов Bitcoin; превышение приводит к отклонению индексации.
  • Надписи‚ созданные с использованием нераспознанных опкодов (например‚ OP_66) – текущая версия Ordinals v0.6.0 их не поддерживает‚ но такие надписи всё равно записываются в блокчейн.

Влияние на экосистему

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

  • Отрицательные индексы могут «перепрыгивать» при добавлении новых надписей‚ что усложняет их отслеживание.
  • Пользователи‚ полагающиеся только на публичные обозреватели‚ могут «не увидеть» часть своих NFT‑объектов.
  • Разработчики кошельков и маркетплейсов вынуждены внедрять дополнительные механизмы для поиска «проклятых» токенов.
  • С другой стороны‚ все проклятые надписи остаются неизменяемыми и безопасно хранятся в сети Bitcoin‚ что гарантирует их долговечность.

Как обнаружить и работать с проклятыми надписями

Для обычного пользователя достаточно знать‚ что если надпись не видна в популярных обозревателях (например‚ ordinals.com)‚ но транзакция с ней существует‚ то‚ скорее всего‚ это проклятая надпись.

Технические шаги для продвинутых пользователей:

  1. Получить txid транзакции‚ в которой была создана надпись.
  2. С помощью Blockstream Explorer или собственного Bitcoin‑node выполнить getrawtransaction <txid> true.
  3. Проанализировать скрипт (scriptPubKey) на наличие OP_RETURN или OP_66‚ а также проверить размер вложенных данных.
  4. Если надпись присутствует‚ но не имеет положительного индекса‚ её можно отнести к категории проклятой.
  5. Для отображения в пользовательском интерфейсе можно добавить поддержку отрицательных индексов (например‚ «‑1»‚ «‑2» и т.д.).

Перспективы и планы по исправлению

Разработчики Ordinals уже работают над тем‚ чтобы «освободить» проклятые надписи от их отрицательного статуса:

  • В версии v0.7;0‚ запланированной к выпуску в конце 2026 года‚ будет реализован механизм retroactive indexing – повторная индексация уже записанных надписей.
  • Будет добавлена поддержка новых опкодов (в т.ч. OP_66) после проведения BIP‑XXXX.
  • Планируется внедрить универсальный указатель‚ позволяющий корректно работать с полем pointer без риска «проклятия».
  • Сообщество обсуждает возможность переприсвоения отрицательных индексов в положительные‚ но только после согласования с держателями этих надписей‚ чтобы избежать конфликтов.

Проклятие на подпись – это не «зловещий» баг‚ а естественное следствие ранних ограничений протокола Ordinals. Оно подчёркивает важность тщательного тестирования новых функций в блокчейн‑системах‚ где любые изменения становятся необратимыми.

Понимание того‚ какие надписи попадают в категорию проклятых‚ как их обнаруживать и какие шаги предпринимаются для их «исцеления»‚ поможет пользователям и разработчикам более уверенно работать с инновационными NFT‑решениями в сети Bitcoin.


Источники:

  • Что такое проклятые надписи? – Gate.io‚ 15 янв 2024.
  • Github Issues #2045‚ #2693 – официальные обсуждения Ordinals.
  • Blockstream Explorer – публичный Bitcoin‑explorer.