Wydanie globalnego zdecentralizowanego systemu plików IPFS 0.7

Przesłane przez wydanie zdecentralizowanego systemu plików IPFS 0.7 (InterPlanetary File System), który tworzy globalny wersjonowany magazyn plików, wdrażany w formie sieci P2P utworzonej z systemów uczestników. IPFS łączy pomysły zaimplementowane wcześniej w systemach takich jak Git, BitTorrent, Kademlia, SFS i Web i przypomina pojedynczy „roj” BitTorrenta (równieżnicy biorący udział w dystrybucji) wymieniający obiekty Git. IPFS wyróżnia się adresowaniem na podstawie treści, a nie lokalizacji i dowolnych nazw. Referencyjny kod implementacyjny jest napisany w Go i dystrybuowane przez na licencjach Apache 2.0 i MIT.

Nowa wersja domyślnie wyłącza transport SECIO, który w ostatnim numerze został zastąpiony transportem HAŁAS, założony na protokole Hałas i opracowany w ramach modułowego stosu sieciowego dla aplikacji P2P libp2p. TLSv1.3 pozostaje transportem zapasowym. Administratorom węzłów korzystających ze starszych wersji IPFS (Go IPFS < 0.5 lub JS IPFS < 0.47) zaleca się aktualizację oprogramowania, aby uniknąć pogorszenia wydajności.

Nowa wersja umożliwia także domyślne przejście na użycie kluczy ed25519 zamiast RSA. Zachowano obsługę starych kluczy RSA, ale nowe klucze będą teraz generowane przy użyciu algorytmu ed25519. Zastosowanie wbudowanych kluczy publicznych ed25519 rozwiązuje problem przechowywania kluczy publicznych, np. do weryfikacji podpisanych danych przy użyciu ed25519 wystarczy informacja o PeerId. Nazwy kluczy w ścieżkach IPNS są teraz kodowane przy użyciu algorytmu base36 CIDv1 zamiast base58btc.

Oprócz zmiany domyślnego typu klucza, IPFS 0.7 dodał możliwość rotacji kluczy identyfikacyjnych. Aby zmienić klucz hosta, możesz teraz uruchomić polecenie „ipfs key Rotate”. Dodatkowo dodano nowe polecenia do importu i eksportu kluczy („ipfs key import” i „ipfs key eksport”), które można wykorzystać do celów kopii zapasowych, a także polecenie „ipfs dag stat” służące do wyświetlenia statystyk dotyczących DAG (Rozproszone wykresy acykliczne).

Przypomnijmy, że w IPFS łącze umożliwiające dostęp do pliku jest bezpośrednio powiązane z jego zawartością i zawiera kryptograficzny skrót zawartości. Adresu pliku nie można dowolnie zmieniać, można go zmienić jedynie po zmianie zawartości. Podobnie nie da się dokonać zmian w pliku bez zmiany adresu (stara wersja pozostanie pod tym samym adresem, a nowa będzie dostępna pod innym adresem, ponieważ zmieni się skrót zawartości pliku). Mając na uwadze, że identyfikator pliku zmienia się przy każdej zmianie, aby nie przenosić za każdym razem nowych linków, świadczone są usługi linkowania stałych adresów, które uwzględniają różne wersje pliku (IPN), lub nadanie aliasu przez analogię z tradycyjnym FS i DNS (MFS (Zmienny system plików) i DNSLink).

Analogicznie do BitTorrenta, dane są przechowywane bezpośrednio w systemach uczestników wymieniających informacje w trybie P2P, bez przywiązania do scentralizowanych węzłów. Jeżeli konieczne jest otrzymanie pliku o określonej treści, system znajduje uczestników posiadających ten plik i wysyła go ze swoich systemów w częściach w kilku wątkach. Po pobraniu pliku do swojego systemu uczestnik automatycznie staje się jednym z punktów jego dystrybucji. Aby określić uczestników sieci, na których węzłach znajduje się interesująca treść używany rozproszona tablica mieszająca (DHT). Aby uzyskać dostęp do globalnego IPFS FS, można użyć protokołu HTTP lub zamontować wirtualny FS /ipfs za pomocą modułu FUSE.

IPFS pomaga rozwiązać problemy takie jak niezawodność przechowywania (w przypadku wyczerpania się pierwotnej pamięci, plik można pobrać z systemów innych użytkowników), odporność na cenzurę treści (blokowanie wymaga zablokowania wszystkich systemów użytkownika, które posiadają kopię danych) i organizowanie dostępu w przypadku braku bezpośredniego połączenia z Internetem lub jeśli jakość kanału komunikacji jest słaba (można pobierać dane za pośrednictwem pobliskich uczestników w sieci lokalnej). Oprócz przechowywania plików i wymiany danych, IPFS może służyć jako podstawa do tworzenia nowych usług, na przykład do organizowania działania witryn niepowiązanych z serwerami lub do tworzenia rozproszonych aplikacje.

Wydanie globalnego zdecentralizowanego systemu plików IPFS 0.7

Źródło: opennet.ru

Dodaj komentarz