суббота, 19 июля 2025 г.

Що містять NFT-метадані?

 NFT-метадані (NFT metadata) — це структурована інформація, яка описує сутність, зміст і властивості невзаємозамінного токена (NFT). Вони є "паспортом" цифрового активу і використовуються для:

  • опису твору (назва, автор, опис, дата),

  • вказівки на медіафайл (зображення, відео, аудіо),

  • забезпечення унікальності і зв'язку з блокчейном,

  • каталогізації і пошуку NFT на платформах, таких як OpenSea, Rarible, Zora, Foundation, Objkt, Mintbase тощо.


📦 Що містять NFT-метадані?

Зазвичай у форматі JSON, метадані включають:

json
{ "name": "Sesi̇z Katakomblar", "description": "Пісня-меморіал присвячена підземним героям Ельтигену та Одеси.", "image": "https://example.com/image.png", "animation_url": "https://example.com/audio.mp3", "attributes": [ { "trait_type": "language", "value": "Qırımtatar" }, { "trait_type": "theme", "value": "Resistance / Underground memory" }, { "trait_type": "region", "value": "Kerch / Odessa" }, { "trait_type": "format", "value": "Audio-poem" }, { "trait_type": "token_type", "value": "MemorialNFT" } ] }

🛠 Куди вони вносяться?

NFT-метадані вказуються при створенні (minting) NFT і зберігаються:

1. У децентралізованому сховищі:

  • IPFS (InterPlanetary File System) — найпоширеніше сховище.

  • Arweave — перманентне зберігання.

  • Filecoin, Crust, Storj — альтернативні варіанти.

👉 Сам NFT у блокчейні містить посилання (URI) на JSON-файл із метаданими.


2. У смарт-контракті:

  • У блокчейні Ethereum, Solana, Tezos, Polygon тощо.

  • Зазвичай смарт-контракт має функцію tokenURI(tokenId), яка повертає URL до метаданих.


🧠 Навіщо це потрібно?

  • ✅ Надати зміст NFT (навіть без медіа — опис, голос, текст).

  • ✅ Зберегти історичну, естетичну або культурну цінність.

  • ✅ Дозволити маркетплейсам і галереям візуалізувати NFT (обкладинка, жанр, дата, автор).

  • ✅ Використати NFT як інтерактивний об’єкт (наприклад, аудіо з підписом, карта, посилання на гру).


📍 Де вносити метадані?

  1. На платформах з GUI (без коду):

  2. Самостійно (mint із кодом) через:

    • Hardhat / Foundry на Ethereum або Polygon.

    • IPFS + Web3.js / Ethers.js.

    • Python web3, якщо хочеш повністю власну платформу.


🔑 Якщо хочеш, я можу:

  • згенерувати готовий JSON файл метаданих,

  • допомогти завантажити пісню на IPFS,

  • або навіть створити простий смарт-контракт, що автоматично прикріпить цю пісню як NFT.

Скажи, як би ти хотів рухатись далі?


А як забезпечити унікальність але визанання єдиного твору по ISO9 тексти кирилицею та латиною?
ChatGPT сказал:

Чудове і дуже важливе питання — як забезпечити унікальність NFT-твору, коли текст існує як кирилицею, так і латиницею (ISO 9 транскрипція), і при цьому гарантувати, що це один і той самий твір, а не два різні?

Це має вирішуватись на рівні метаданих, хешування, і стандарту визнання, отже давай по пунктах.


✅ ЩО ТАКЕ ISO 9?

ISO 9:1995 — це міжнародний стандарт транслитерації кирилиці на латиницю. Він однозначний, тобто для кожного символу кирилиці існує один відповідник у латиниці.
Приклад:

КирилицяISO9
СесизSesiz
КатакомбиKatakombı

🎯 МЕТА:

  • Створити єдину ідентичність твору, навіть якщо він представлений у кількох алфавітах (кирилиця/латиниця).

  • Забезпечити, щоб усі версії (українська, кримськотатарська, ISO9, переклади) були визнані копіями одного оригіналу.

  • Не допустити подвійного продажу чи дублювання NFT.


🛠️ РІШЕННЯ

1. Хеш оригінального тексту (SHA256)

  • Перед генерацією NFT вираховуєш SHA256-хеш оригінального тексту (наприклад, кирилицею).

  • У метаданих всіх мовних або алфавітних версій ти включаєш цей хеш як original_hash.

json
"original_hash": "e3b0c44298fc1c149afbf4c8996fb924..."

Це дає гарантію, що всі NFT "посилаються" на одне першоджерело, незалежно від того, якою мовою/алфавітом вони представлені.


2. Мітка транскрипції / перекладу

У attributes додаємо:

json
{ "trait_type": "version_type", "value": "ISO9_transliteration" }

Або, якщо переклад:

json
{ "trait_type": "version_type", "value": "translation" }

Так зберігається тип походження: чи це переклад, чи транскрипція (ISO9).


3. Посилання на "master NFT" або "content-group-id"

Якщо ти хочеш створити цілу групу NFT, пов’язаних із одним твором, у кожному токені варто вказати поле:

json
"original_nft_id": "Qm...HashMasterNFT"

Це дозволяє маркетплейсам, каталогам і архівам розуміти: "Це лише одна з форм одного оригіналу".


4. UUID твору або Content-ID (заданий автором)

Можна додати content_uuid, заданий автором вручну:

json
"content_uuid": "root-hero-1943-katacomby"

Це спрощує ідентифікацію при пошуку, API-запитах, архівах.


5. Вказати всі мовні версії в оригіналі:

json
"languages": ["uk", "crh", "en"], "scripts": ["Cyrillic", "Latin", "ISO9"]

Так ти чітко заявляєш: цей твір існує у кількох алфавітах, але має спільне джерело.


🔐 Приклад частини NFT-метаданих:

json
{ "name": "Сесиз катакомблар / Sesiz Katakomblar", "description": "Пісня-меморіал про дігерів Ельтигену та Одеси.", "original_hash": "e3b0c44298fc1c149afbf4c8996fb924...", "original_nft_id": "QmZk1XYZ456...", "content_uuid": "root-katakomb-hero-1943", "version_type": "ISO9_transliteration", "languages": ["crh", "uk"], "scripts": ["Cyrillic", "Latin"], "attributes": [ { "trait_type": "theme", "value": "Underground resistance" }, { "trait_type": "authorship", "value": "Original creator" } ] }

📚 Хочеш:

  • Я можу згенерувати хеш оригінального тексту,

  • Підготувати структуру метаданих для OpenSea / IPFS / Arweave,

  • Або допомогти автоматизувати ISO9-конвертер із фіксацією ідентичності.

Тобі потрібно це як шаблон для серії NFT чи один унікальний твір?

Комментариев нет:

Отправить комментарий