Czym jest IPFS i ja...
 
Powiadomienia
Wyczyść wszystko

Czym jest IPFS i jak przechowuje się tam pliki dla NFT?

2 Wpisy
3 Użytkownicy
0 Reactions
36 Widoki
(@krol_2006)
New Member
Połączone: 1 miesiąc temu
Wpisy: 0
Rozpoczynający temat  
OKX

Kupuj kryptowaluty BLIKiem ⚡

Błyskawiczne wpłaty bez opłat i prowizji na giełdzie OKX.

Kup krypto z 0% prowizji

Siemano, ostatnio mocno grzebałem w temacie krypto i zastanawia mnie jedna rzecz, o której rzadko się mówi przy okazji drogich małp i innych cyfrowych obrazków. Czym jest IPFS i jak przechowuje się tam pliki dla NFT? Wiadomo przecież, że sam obrazek czy filmik nie siedzi bezpośrednio na blockchainie, bo zapchanie sieci czymś takim kosztowałoby miliony monet za sam gas fee.

Z tego co rozkminiłem czytając różne whitepapery, IPFS (czyli InterPlanetary File System) to taka totalnie zdecentralizowana sieć, działająca w sumie trochę jak stare dobre torrenty. Zamiast wrzucać jotpega na centralny serwer typu AWS czy jakiś hosting WWW, wrzucasz go w sieć niezależnych węzłów (nodów).

I tu jest największy bajer tego całego systemu. W normalnym necie szukasz danych po adresie URL, czyli lokalizacji. W IPFS szukasz po tym, czym dany plik jest. Każdy plik po wrzuceniu do sieci dostaje swój unikalny hash kryptograficzny, tzw. CID. Jak zmienisz w grafice choćby jeden piksel, hash robi się zupelnie inny i od razu widać, że to fejk.

No dobra, ale jak przechowuje się tam pliki dla NFT w praktyce?
Kiedy odpalasz mintowanie, tak naprawdę tworzysz smart kontrakt. Ten kontrakt ma zaszyty w kodzie link do metadanych (to zazwyczaj zwykły plik tekstowy JSON). I dopiero w tych metadanych siedzi odnośnik do samego obrazka na IPFS. Dzięki temu masz gwarancję, że nikt ci nagle nie podmieni grafiki pod twoim tokenem na jakieś głupoty.

Tylko z tego co widzę, jest jeden spory haczyk. Mnóstwo ludzi myśli, że jak raz wrzuci pliki dla NFT na sieć IPFS, to one tam będą żyły wiecznie na jakiejś magicznej chmurze. Guzik prawda. Żeby plik nie zniknął z sieci, ktoś musi go fizycznie "przypiąć" na swoim dysku (to się nazywa pinning). Jak żaden węzeł nie trzyma twojego pliku, to on po pewnym czasie po prostu wyparuje z cache'u. Wtedy twój super unikalny token będzie prowadził do martwego linku. Dlatego twórcy często używają zewnętrznych serwisów jak Pinata, które za hajs po prostu trzymają te dane na swoich serwerach, udając sieć P2P.

Macie z tym jakieś głębsze doświadczenia? Jakich bramek używacie do hostowania swoich projektów? Sami stawiacie węzły w domu na malinkach, czy lecicie na gotowcach od zewnętrznych firm? Dajcie znać, bo chcę to dobrze poskładać do kupy do mojego projektu.



   
Cytat
(@upa_pierog)
New Member
Połączone: 1 miesiąc temu
Wpisy: 0
 
OKX

Kupuj kryptowaluty BLIKiem ⚡

Błyskawiczne wpłaty bez opłat i prowizji na giełdzie OKX.

Kup krypto z 0% prowizji

Siemano! Stary, szacun za ten post, bo dobrze to wszystko rozkminiłeś. Większość krypto degenów wchodzi w temat, klika tylko "mint" i modli się o szybki profit, kompletnie nie ogarniając, czym jest IPFS i jak przechowuje się tam pliki dla NFT. A potem płacz na Discordzie, że ich wydropiony za grube ETH token to nagle pusty kwadrat.

Trafiłeś w samo sedno z tym znikaniem danych. To był chyba największy cichy scam zeszłej hossy. Twórcy projektów wypuszczali kolekcje, kasowali gruby hajs, a po kilku miesiącach przestawali opłacać serwery udające sieć P2P. Efekt? Token leży sobie bezpiecznie na blockchainie (np. na Ethereum), smart kontrakt działa elegancko, ale link zaszyty w metadanych prowadzi do absolutnej próżni. Wtedy degeny zrobia wielkie oczy, bo dociera do nich, że kupili po prostu wygasły link tekstowy w pliku JSON, a nie wiekopomne dzieło sztuki.

Pytasz, jak to fizycznie ugryźć i jakich bramek (gateways) używać do hostingu web3. Powiem ci tak z własnego doświadczenia – stawianie własnego noda na malince (Raspberry Pi) w sypialni jest super dla zajawki i żeby pojąć sam rozproszony system plików. Ale do komercyjnego projektu? Totalne samobójstwo. Zresetuje ci się router, dostawca neta złapie czkawkę, wywali korki i nagle twoje grafiki ładują się ludziom przez minutę na OpenSea. Zjedzą cię na Twitterze, bo ludzie w krypto nie mają cierpliwości.

Jeśli chcesz wiedzieć, jak profesjonalnie trzymać metadane tokenów i same obrazki, to wszyscy i tak zjeżdżają do scentralizowanych rozwiązań, żeby obsłużyć tę wielką decentralizację. Brzmi jak absurd, wiem. Ale taka jest prawda o rynku. Klasykiem do pinningu plików jest Pinata. Wrzucasz, płacisz abonament i masz pewność, że pliki nie wyparują z cache'u globalnej sieci. Kiedyś zajebiście sprawdzało się też NFT.storage, ale mocno pozmieniali modele biznesowe. Ja zazwyczaj robię to podwójnie: wrzucam główny wsad przez zewnętrzny pinning service, a dla spokojnej głowy odpalam to jeszcze na swoim lapku przez aplikację IPFS Desktop. Im więcej węzłów sieci (peers) seeduje twój kryptograficzny CID, tym szybciej ładuje się front-end dla kupującego.

Ale słuchaj, skoro już grzebiesz w architekturze i badasz, w jaki sposób przechowuje się pliki do tokenów non-fungible, to polecam ci zerknąć na coś o nazwie Arweave albo Filecoin. Filecoin to w sumie taka ekonomiczna nakładka na sam IPFS – płacisz krypto minerom za kryptograficzny dowód, że faktycznie trzymają twój plik na swoich dyskach. Natomiast Arweave to w ogóle inny level, tzw. permaweb. Płacisz raz przy wrzucaniu danych i ten system gwarantuje, że plik będzie żył w ich bloku na zawsze, dopóki istnieje ten protokół. Dla wielu twórców to o niebo lepsza i bezpieczniejsza opcja niż bujanie się z abonamentami w dolarach za utrzymanie węzła w IPFS.

Dobrze, że drążysz temat, zanim odpalisz swój projekt na mainnecie. Skup się mocno na tym, jak zdefiniujesz baseURI w smart kontrakcie. Dobra praktyka to zrobienie tego tak, żeby w razie totalnej awarii sieci IPFS dało się to przepiąć na inny storage przez osobną funkcję (oczywiście dobrze by było, jakby społeczność miała na to wpływ przez jakieś DAO, żeby uniknąć oskarżeń o centralizację). Powodzenia z kodowaniem, lecimy z tym, z fartem!



   
OdpowiedzCytat
(@dzikimieso)
New Member
Połączone: 1 miesiąc temu
Wpisy: 0
 
OKX

Kupuj kryptowaluty BLIKiem ⚡

Błyskawiczne wpłaty bez opłat i prowizji na giełdzie OKX.

Kup krypto z 0% prowizji

Siema! Chłopaki wyżej ładnie wyjaśnili technikalia, ale ja muszę wrzucić swoje trzy grosze i trochę skontrować poprzednika. Szczególnie w kwestii zostawiania sobie w smart kontrakcie furtki do zmiany baseURI.

Zastanówcie się chwilę. Cały urok tego czym jest IPFS i jak przechowuje się tam pliki dla NFT polega na kryptograficznej pewności. Jeśli twój CID prowadzi do konkretnego obrazka, to ten hasz jest święty. Jeśli jednak dodasz do kontraktu opcję, żeby dev mógł w dowolnym momencie podmienić ścieżkę do metadanych JSON, to dajesz mu god-mode. Dzisiaj kupujesz epickiego smoka, a jutro dev klika w panelu i zamast smoka masz zdjęcie starego buta. To jest gotowy przepis na rug pulla i ogarnięci kolekcjonerzy od razu omijają takie tokeny szerokim łukiem. Niezmienna baza to podstawa zaufania w tym całym web3.

Kolejna sprawa, o której mało kto gada przy deweloperce, to same publiczne bramki. Nawet jak opłacisz Pinatę czy inne serwisy za gruby hajs, to i tak front-end twojej apki musi jakoś wyświetlić te rozproszone pliki zwykłemu kowalskiemu w przeglądarce. I tu zaczynają się grube schody. Publiczne adresy typu ipfs.io są nagminnie banowane przez antywirusy i przeglądarki z wbudowanymi blokerami (np. Brave). Dlaczego? Bo scammerzy masowo hostują na IPFS złośliwy kod i strony phishingowe udające formularze mintu. Potem wypuszczasz w 100% legitny projekt, a ludzie piszą ci na discordzie, że Norton krzyczy o wirusach przy ładowaniu galerii. Dlatego własna, dedykowana domena jako custom gateway podpięta pod pinning service to absolutny wymóg, jeśli celujecie w coś większego niż domowy eksperyment.

A na koniec dam wam jeszcze zupełnie inną opcję. Jak ktoś ma paranoję na punkcie znikających danych i nie ufa opłacaniu węzłów w IPFS ani nawet Arweave, to zostaje czysty on-chain. Serio. Tylko zapomnijcie wtedy o ciężkich grafikach w 4K. Robi się to w wektorach (SVG) i koduje w Base64 bezpośrednio w ciele smart kontraktu. Koszt wdrożenia potrafi wypalić dziurę w portfelu przez gas fee, ale wtedy twój asset jest dosłownie wyryty w blockchainie. Jak Ethereum przetrwa następne 100 lat, to twoja sztuka też. Bez żadnych zewnętrznych serwerów i abonamentów.

Rozważcie to wszystko, zanim na ślepo zepniecie frontend z pierwszym lepszym haszem. Powodzenia przy kodzeniu!



   
OdpowiedzCytat
Udostępnij: