====== NFT a IPFS: Jak se ukládají data ====== Ukládání dat u NFT je často zdrojem nepochopení. Většina uživatelů se domnívá, že jejich obrázek je "v blockchainu". Ve skutečnosti je tam pouze odkaz, a to, kam tento odkaz vede, rozhoduje o trvalosti celého digitálního aktiva. ===== 1. Problém centralizovaných odkazů ===== Pokud by standard [[it:sw:erc721|ERC-721]] používal pro uložení metadat klasické URL (např. ''https://moje-vystava.cz/token1.json''), vznikají dvě zásadní rizika: * **Link Rot (Mrtvé odkazy):** Pokud majitel přestane platit doménu nebo server, NFT odkazuje na chybu 404. * **Změna obsahu:** Majitel serveru může soubor na stejné adrese vyměnit. Vaše "vzácné NFT" by se mohlo změnit na prázdný čtverec, aniž by se změnilo cokoli na blockchainu. --- ===== 2. Role IPFS (Content Addressing) ===== [[it:sw:ipfs|IPFS]] tento problém řeší pomocí **Content Identifiers (CID)**. Odkaz na data není definován tím, kde se nacházejí, ale tím, co obsahují. * **Unikátní otisk:** Každý soubor na IPFS má unikátní hash. * **Nezměnitelnost:** ===== 3. Proces ražby (Minting) a Metadata ===== Při vytváření NFT probíhá proces v těchto krocích: 1. **Nahrání média:** Autor nahraje obrázek/video na IPFS a získá **Image CID**. 2. **Vytvoření JSON:** Autor vytvoří soubor s metadaty (jméno, popis, vlastnosti), kde v poli "image" uvede získané Image CID. 3. **Nahrání metadat:** Tento JSON soubor se nahraje na IPFS a získá své vlastní **Metadata CID**. 4. **Minting:** Do chytré smlouvy na blockchainu se zapíše funkce ''mint'', která přiřadí konkrétnímu TokenID právě toto **Metadata CID**. --- ===== 4. Persistence: Co se stane, když nikdo soubor nesdílí? ===== IPFS nezaručuje věčné uložení samo o sobě. Data existují v síti jen tehdy, pokud je alespoň jeden uzel sdílí ("pinning"). * **Garance dostupnosti:** Autoři projektů nebo sběratelé využívají **Pinning Services** (např. Pinata, Infura, NFT.Storage), které zajišťují, že data jsou v síti IPFS dostupná 24/7. * **Vlastní uzel:** Skutečně zapálený sběratel může své NFT "přišpendlit" na vlastním IPFS uzlu (např. na Raspberry Pi). --- ===== 5. Srovnání metod uložení ===== ^ Metoda ^ Bezpečnost ^ Cena ^ Trvalost ^ | **On-chain** (v kódu) | Maximální | Extrémně vysoká | Věčná (dokud běží síť) | | **IPFS** | Vysoká | Nízká | Závislá na "pinningu" | | **Centralizovaný web** | Nulová | Zdarma | Závislá na majiteli webu | ---- //Související články:// * [[it:sw:ipfs|IPFS: Technický protokol]] * [[it:sw:erc721|ERC-721: Standard pro NFT]] * [[it:sw:arweave|Arweave: Alternativa s trvalým úložištěm]] //Tagy: {{tag>it nft ipfs blockchain storage web3 metadata}}//