Co to jest InterPlanetary File System (IPFS)?
IPFS to skrót od Inter-Platform File System – protokołu open source i peer-to-peer, którego celem jest funkcjonowanie jako wszechobecny system plików dla wszystkich urządzeń komputerowych. Jest to złożony i bardzo ambitny projekt o poważnych i głębokich implikacjach dla przyszłego rozwoju i struktury Internetu, jaki znamy. Przyjrzyjmy się jednak głębiej co to jest IPFS, jak działa, jakie ma zastosowania i przypadki użycia, jak z niego korzystać oraz czym różni się od HTTP.
Spis treści:
IPFS – Co to jest? Definicja
Kiedy strona internetowa przestaje działać, często jest to spowodowane awarią scentralizowanej usługi, np. problemem z serwerem, systemem nazw domen (DNS), lub rozproszonym atakiem, takim jak DDOS. Czasami jest to kwestia cenzury. Zwłaszcza w krajach, które ograniczają pewne treści, aby ukryć je przed swoimi obywatelami.
IPFS jest zdecentralizowaną siecią wymiany plików typu peer-to-peer i otwartą usługą Web3, zaprojektowaną tak, aby wyeliminować scentralizowane punkty awarii i próby cenzury. Wszystko po to, aby zapewnić swobodny dostęp do sieci dla wszystkich. Jest to również sposób na tworzenie kopii zapasowych plików cyfrowych, np. niewymiennych tokenów (NFT), po to, aby nie zniknęły one nagle z Internetu.
IPFS vs HTTP
Obecna iteracja Internetu nie jest tak zdecentralizowana jak się to idealistycznie i początkowo postrzegało. Jest ona również oparta na pewnych przestarzałych protokołach, które doprowadziły do wielu problemów. IPFS stara się rozwiązać problemy związane z obecnym w Internecie protokołem HTTP.
HTTP jest w zasadzie sercem transmisji danych w całym Internecie. Protokół HTTP został wymyślony w 1991 roku, przyjęty przez przeglądarki internetowe w 1996 roku i zasadniczo określa, jak wiadomości są przesyłane przez Internet i jak przeglądarki powinny odpowiadać na polecenia, a serwery obsługiwać żądania.
Jest to w zasadzie podstawowy protokół tego, jak przeglądamy strony internetowe i fundament protokołu paradygmatu klient-serwer.
Chociaż HTTP dostarczył nam Internet, jaki znamy dzisiaj, stał się przestarzały. Po ponad 20 latach związane z nim problemy stają się coraz bardziej widoczne.
Problemy HTTP
Główne problemy z jakimi spotyka się dziś implementacja protokołu HTTP, wynikają z ogromnego wzrostu ruchu w Internecie. Są to:
- Nieefektywne dostarczanie treści z powodu jednoczesnego pobierania plików z jednego serwera.
- Drogie koszty przepustowości i zduplikowane pliki powodujące przepełnienie pamięci masowej.
- Rosnąca centralizacja serwerów i dostawców usług internetowych prowadząca do zwiększenia cenzury Internetu.
- Nietrwała historia informacji przechowywanych w Internecie i krótki czas życia stron internetowych.
- Niskie prędkości i niestabilne połączenia.
Lista problemów z całą pewnością mogłaby być jeszcze dłuższa. Nie dziwi więc fakt, że licząca ponad 20 lat technologia staje się coraz bardziej przestarzała w dobie innowacji technologicznych.
IPFS zapewnia rozproszony system przechowywania i plików, którego Internet potrzebuje, aby osiągnąć swój prawdziwy potencjał. Zamiast przesyłać pliki z poszczególnych serwerów do IPFS, żądasz od węzłów peer-to-peer w sieci wskazania pliku – a nie od centralnego serwera. Umożliwia to dystrybucję dużych ilości danych z wysoką wydajnością, historyczną kontrolę wersji, sieci odporne na błędy oraz ciągłą dostępność treści, które są chronione i weryfikowane poprzez kryptograficzne haszowanie i rozproszone węzły peer-to-peer w całej sieci.
Wszystko to brzmi obiecująco, ale jak właściwie działa IPFS? Już spieszymy z odpowiedzią.
Jak działa IPFS?
Zasadniczo IPFS jest koncepcją podobną do znanej nam dziś sieci World Wide Web. Bardziej jednak przypomina pojedynczy rejestr BitTorrent, który wymienia obiekty w jednym repozytorium Git.
Pliki rozpowszechniane są za pomocą protokołu opartego na sieci BitTorrent. Należy zauważyć, że IPFS działa jako swoiste połączenie Kodemila, BitTorrenta i Gita, tworząc rozproszony podsystem internetowy.
Konstrukcja protokołu zapewnia historyczną internetową kontrolę wersji, jak Git. Każdy plik i wszystkie znajdujące się w nim bloki mają przypisany unikalny identyfikator, którym jest kryptograficzny hash. Duplikaty są usuwane przez sieć, a historia wersji jest śledzona dla każdego pliku. Powoduje to stały dostęp do treści. Strony internetowe nie znikają z powodu awarii serwera lub bankructwa hostingu.
Ponadto, za pomocą tego mechanizmu gwarantowana jest autentyczność treści. A kiedy wyszukujesz pliki, zasadniczo prosisz sieć o znalezienie węzłów przechowujących treść za pomocą unikalnego identyfikacyjnego hasha związanego z tą treścią.
IPFS – zalety
Powiązania między węzłami w IPFS mają postać kryptograficznych haszy, a jest to możliwe dzięki architekturze danych Merkle DAG. Do zalet IPFS należą:
- Adresowanie treści – treść posiada unikalny identyfikator, którym jest kryptograficzny hash pliku.
- Brak duplikacji – pliki o tej samej zawartości nie mogą być powielane i są zapisywane tylko raz.
- Tamper Evidence – dane są weryfikowane przez sumę kontrolną, więc jeśli kod hasha zostanie zmieniony, IPFS będzie wiedział, że dane zostały naruszone.
IPFS łączy struktury plików ze sobą za pomocą połączeń Merkle, a każdy plik można znaleźć po nazwach czytelnych dla człowieka przy użyciu zdecentralizowanego systemu nazewnictwa o nazwie IPNS.
Skierowane grafy acykliczne Merkle
Implementacja skierowanych grafów acyklicznych Merkle (DAGS) jest ważna dla podstawowej funkcjonalności protokołu. Niestety jest to sprawa bardzo mocno techniczna. Jeśli chcesz dowiedzieć się więcej o tym aspekcie IPFS, możesz znaleźć znacznie więcej informacji na stronie IPFS Github. Z Wikipedii dowiesz się też jak działają drzewa Merkle.
Każdy węzeł przechowuje tylko te treści, którymi jest zainteresowany i indeksuje informacje, które pozwalają mu zorientować się, kto co przechowuje. Infrastruktura IPFS zasadniczo usuwa potrzebę posiadania scentralizowanych serwerów do dostarczania treści stron internetowych do użytkowników.
Ostatecznie koncepcja ta może zepchnąć protokół HTTP całkowicie do punktu bezużyteczności i pozwolić użytkownikom na dostęp do treści lokalnie, w trybie offline. Zamiast szukać serwerów, jak w przypadku obecnej infrastruktury Internetu, użytkownicy szukaliby unikalnych identyfikatorów (kryptograficznych haseł), co pozwoliłoby milionom komputerów dostarczyć plik do użytkownika – zamiast pojedynczego serwera.
Obecna główna implementacja IPFS jest uruchomiona w Go z implementacjami Pythona i Javascript. Jest ona kompatybilna z systemami Linux, MacOSX, Windows i FreeBSD. IPFS to projekt open source, napędzany przez społeczność. Możesz więc przyczynić się do jego rozwoju, postępując zgodnie z wytycznymi i dokumentami na stronie Github, lub uruchomić własny węzeł IPFS.
IPFS – przypadki użycia
Już teraz istnieje kilka ważnych przypadków użycia IPFS, a kolejne z pewnością pojawią się w miarę rozwoju protokołu. Oczywiste korzyści, które płyną z modelu rozproszonej pamięci masowej IPFS, dotyczą znacznie bardziej efektywnego przechowywania danych i trwałości.
Strony internetowe nie będą już wyświetlane z komunikatami o błędach 404 z powodu niedziałających serwerów. Ponadto użytkownicy odnoszą duże korzyści w zakresie wydajności. Zwłaszcza ci, którzy muszą analizować bardzo duże zbiory danych.
Wraz z rozpowszechnianiem się big data we współczesnej nauce, ich szybka i rozproszona archiwizacja zapewniana przez IPFS będzie ważnym czynnikiem przyspieszającym rozwój. Dostawcy usług i twórcy treści mogą również znacznie obniżyć swoje koszty związane z dostarczaniem dużych ilości danych do klientów.
Obecne iteracje tego paradygmatu są utrudnione przez rosnące koszty pasma i dostawców danych otrzymujących opłaty za umowy peeringu. Koszty związane z dostarczaniem treści za pośrednictwem scentralizowanej, połączonej infrastruktury sieciowej tylko rosną i tworzą nieefektywność i większą centralizację.
Przypadki użycia IPFS świetnie wyjaśnia poniższy film z oficjalnego kanału Youtube protokołu. W prosty sposób tłumaczy on “Dlaczego IPFS jest potrzebny?
Ponadto centralizacja serwerów może prowadzić do inwigilacji rządowej, zwiększonej powszechności ataków DDoS, cenzury i prywatnej sprzedaży danych. Jak powiedział Juan Benet, twórca IPFS:
Treści w IPFS mogą przemieszczać się przez dowolnych niezaufanych pośredników bez rezygnacji z kontroli nad danymi lub narażania ich na ryzyko.
Wreszcie, integracja IPFS z technologią blockchain wydaje się być idealnym rozwiązaniem. Używając IPFS wewnątrz transakcji na łańcuchu, możesz umieścić w nich niezmienne stałe linki.
Tymczasowe znaczniki chronią dane bez konieczności faktycznego przechowywania ich w blockchainie. To skutkuje mniejszym przepełnieniem blockchaina. Zapewnia też wygodną metodę bezpiecznego rozwiązania off-chain, które pomaga skalować łańcuchy.
IPFS należy do platform kryptowalutowych i może symbiotycznie pomóc w skalowaniu branży, zapewniając architekturę peer-to-peer i rozproszonego systemu plików, która jest potrzebna jako fundament wspierający rozwój krypto platform.
Kto używa IPFS? Zastosowanie w świecie krypto
Istnieje wiele usług Web3, które już teraz wykorzystują IPFS w wielu różnych zastosowaniach. Oto kilka najważniejszych z nich:
- Filecoin – rozproszona sieć pamięci masowej firmy Protocol Labs, jest oparta na IPFS. Zachęca operatorów węzłów do hostowania plików nagradzając ich kryptowalutami.
- Audius – zdecentralizowana usługa muzyczna, używa IPFS do hostowania swoich plików audio.
- Pinata – to usługa hostingowa NFT, która wykorzystuje IPFS do tworzenia kopii zapasowych kolekcji dla partnerów takich jak Rarible i Sorare.
- OpenBazaar – to platforma peer-to-peer e-commerce obsługiwana przez IPFS.
- Morpheus.Network – to usługa sieci dostaw, która również wykorzystuje IPFS.
Learn more about who we are and how we’re using @IPFS at Pinata to empower all creators. https://t.co/UqDC5h9oQx
— Pinata ? (@pinatacloud) July 15, 2021
Jak korzystać z IPFS?
Niektóre przeglądarki natywnie obsługują przeglądanie IPFS, inne wymagają zainstalowania rozszerzenia. Zarówno Brave jak i Opera obsługują bezpośrednio linki IPFS: możesz po prostu wkleić link do przeglądarki i przejść do strony lub pliku.
Brave daje możliwość dostępu do zawartości IPFS przez publiczną bramkę lub przez własny lokalny host – ta druga opcja jest dla tych, którzy chcą sprawdzić zawartość lokalnie.
Alternatywnie, możesz uzyskać dostęp do zawartości IPFS z dowolnej przeglądarki za pomocą publicznej bramki, takiej jak https://ipfs.io lub https://cloudflare-ipfs.com. Bramka automatycznie przekieruje Cię do zawartości IPFS za pomocą linku.
Jak uruchomić węzeł IPFS?
Chcesz uruchomić własny węzeł IPFS i dodać zawartość do swojej sieci? Najprostszym sposobem jest użycie IPFS Desktop, oficjalnego pakietu oprogramowania od Protocol Labs. Jest on dostępny dla systemów Windows, Mac i Ubuntu.
Z kolei IPFS Companion to dodatek do przeglądarki internetowej dostępny dla Chrome, Edge, Brave, Firefox i Opera. Pozwala na interakcję z pulpitem IPFS i zainstalowanym węzłem IPFS bezpośrednio z przeglądarki. Dodaje również obsługę adresów ipfs:// dla przeglądarek, które początkowo ich nie obsługują.
W 2017 roku turecki rząd zablokował dostęp do Wikipedii. Zespół IPFS zareagował, tworząc kopię tureckiej wersji strony internetowej w swojej zdecentralizowanej sieci.
Podsumowanie
Jak zdążyłeś zauważyć, IPFS to skomplikowany technicznie i koncepcyjnie protokół, który ma wielkie ambicje zrewolucjonizowania wymiany danych przez Internet. Protokół HTTP odniósł sukces i pomógł Internetowi osiągnąć fazę, w której znajduje się obecnie. Ale cały czas pojawiają się nowe technologie, które sprawiają, że potrzeba reformy infrastruktury staje się oczywista.
Śledź CrypS. w Google News. Czytaj najważniejsze wiadomości bezpośrednio w Google! Obserwuj ->
Zajrzyj na nasz telegram i dołącz do Crypto. Society. Dołącz ->
Aktualnie brak komentarzy.