Solana NFT — это не просто JPEG

Раньше я думал, что NFT — это просто цифровые изображения.

После недели разработки на Solana мое мнение изменилось. Я потратил время на создание NFT, прикрепление метаданных и организацию коллекций в devnet.

Вот чему я научился.

NFT на Solana — это не отдельный тип актива.

Они используют ту же модель SPL-токенов, что и обычные токены. Они по-прежнему используют:

  • аккаунт минта (mint account)
  • токен-аккаунт (token account)
  • кошелек владельца (owner wallet)

Единственное отличие — в конфигурации. Чтобы превратить токен в NFT, вы устанавливаете следующие правила:

  • Эмиссия (supply) — 1
  • 0 десятичных знаков (decimals)
  • Отключение права на минт (mint authority) после выпуска

Отключение права на минт навсегда фиксирует предложение. То, что кажется новой категорией активов, на самом деле является той же архитектурой, но с другими правилами.

Метаданные делают NFT значимым. Я использовал Metadata Extension, чтобы добавить имя, символ и URI.

NFT не хранит само изображение. Хранение больших файлов on-chain обходится слишком дорого. Вместо этого NFT хранит URI. Этот URI указывает на JSON-файл off-chain. Когда кошелек отображает ваш NFT, он считывает on-chain метаданные, переходит по URI и находит изображение.

Я также узнал о коллекциях. Используя расширения Group и Member, я связал несколько NFT с одним NFT-коллекцией.

Представьте это как связь «родитель-потомок» в базе данных.

  • Коллекция — это родитель.
  • NFT — это участники (members).

Эта связь существует on-chain. Это не просто функция приложения. Любой может проверить, принадлежит ли NFT коллекции, изучив данные аккаунта.

Я также протестировал обновление NFT. Я менял имена и обновлял URI. Изменения происходили on-chain мгновенно. Однако изображение в кошельке может измениться не сразу. Это происходит потому, что кошельки кэшируют метаданные. Данные on-chain верны, но визуальному слою требуется время на обновление.

Главный урок: не делайте предположений о том, как что-то работает. Изучайте аккаунт и проверяйте данные.

NFT построены на тех же принципах, что и любой другой актив на Solana: минт, аккаунты и правила программ. Изображение — для пользователя. Актив определяет именно структура.

Source: https://dev.to/devduchess/understanding-solana-nfts-as-a-web2-developer-more-than-just-jpegs-5ekm