. . .

Przewodnik po Filecoin. Czym jest kryptowaluta FIL i jak działa Filecoin?

Rafał   2021-07-29 12:53

Filecoin to sieć peer-to-peer, która dzięki zachętom finansowym zapewnia niezawodne przechowywanie plików Internecie. Każdy może dołączyć do sieci w roli dostawcy przestrzeni dyskowej lub korzystać z niej przechowując swoje dane.

Filecoin

Według aktualnych założeń ludzie na świecie produkują około 1,145 biliona MB dziennie i będziemy tworzyć jeszcze więcej, co zwiększa zapotrzebowanie na miejsce potrzebne do bezpiecznego przechowywania tych danych. Jeśli chcemy przechowywać spore ilości plików musimy zainwestować we własny sprzęt lub wykupić usługi u firm, którym musimy zapłacić i zaufać co do ich zabezpieczenia i tego, że zapewnią nam do nich dostęp. Element zaufania eliminuje Filecoin.

W Filecoin użytkownicy płacą za przechowywanie swoich plików tak zwanym „Storage Miners”, czyli górnikom przechowywania danych. Górnicy mimo nazwy podobnej do tej stosowanej w Bitcoin nie zajmują się rozwiązywaniem kryptograficznej zagadki. Są to komputery odpowiedzialne za przechowywanie plików, przesyłanie dowodów na to, że je przechowują oraz tworzenie bloków łańcucha Filecoin. 

Każdy, kto chce przechowywać swoje pliki lub zarabiać na ich przechowywaniu, może dołączyć do sieci Filecoin. Koszty przechowywania danych nie są kontrolowane przez żadną pojedynczą firmę, a przez rynek. Natywna kryptowaluta sieci to FIL.

Jak działa Filecoin

Podobnie do innych projektów blockchain Filecoin pozwala na przesyłanie wartości, czyli po prostu wysyłanie transakcji z jednego adresu na drugi, jednak głównym celem sieci jest przechowywanie plików i cała architektura tego projektu skupia się właśnie na tym.

Każdy plik musi przejść przez kilka transformacji, aby zostać przechowywany w sieci jako „Filecoin Piece”. Ten „kawałek” to obiekt, który reprezentuje całość lub część pliku. Najpierw klient po swojej stronie przeprowadza transformacje, w wyniku których otrzymuje unikalny kryptograficzny hash CID. Następnie górnik przechowujący dane, otrzymuje plik i również go przekształca, aby uzyskać taki sam CID. Jako że dane wejście da zawsze takie samo wyjście górnik może sprawdzić hash pliku i upewnić, że wszystko się zgadza.

Głównymdocs.filecoin.ioi aktorami sieci są górnicy oraz klienci. Górnicy dzielą się na trzy typy, z czego w sieci zaimplementowane są na razie tylko dwa, Storage miners oraz Retrieval miners.

Podstawową funkcją sieci Filecoin są umowy (ang. Deals). Reprezentują kontrakt na przechowywanie danych zawarty między klientem a górnikiem.

jak dziala filecoinGrafika: docs.filecoin.io

Deals

Umowy dzielą się na dwie główne kategorie, są to transakcje przechowywania, w których jedna strona zgadza się przechowywać dane dla drugiej przez określony czas i za określoną opłatę oraz transakcje odzyskiwania, w których jedna strona zgadza się przesłać określone dane drugiej.

Gdy klient zdecyduje się na górnika, który zajmie się przechowaniem danych, blokuje wystarczającą ilość środków w portfelu, aby pokryć całkowity koszt transakcji. Transakcja jest następnie publikowana po zaakceptowaniu przez górnika umowy.

Po opublikowaniu transakcji klient przygotowuje dane do przechowywania, a następnie przekazuje je górnikowi. Po otrzymaniu wszystkich danych górnik pakuje dane do „sektora”, czyli bloku danych o stałej wielkości, pieczętuje go i zaczyna przesyłać dowody do łańcucha. Po otrzymaniu pierwszego potwierdzenia klient może mieć pewność, że dane są przechowywane prawidłowo, a transakcja oficjalnie się rozpoczęła.

Przez cały okres trwania umowy górnik przekazuje łańcuchowi bieżące dowody na to, że nadal przechowuje konkretne dane. W przypadku braku lub opóźnienia dowodu górnik zostaje ukarany. 

Gdy klient chce odzyskać jakieś pliki, musi zawrzeć umowę z górnikiem odzyskującym dane z sieci (Retrieval miner).

Storage Mining

Storage Mining jest jedną z centralnych części protokołu Filecoin. Zajmuje się przechowywaniem danych klienta i tworzeniem dowodów, które wykazują prawidłowe zachowania oraz dodawaniem kolejnych bloków do łańcucha.

Górnicy (Storage miners) oprócz przechowywania plików i otrzymywania za to nagród są także odpowiedzialni za dodawanie kolejnych bloków do łańcucha. Prawdopodobieństwo zostania wyznaczonym do tego i co za tym idzie uzyskania nagrody za blok i opłat transakcyjnych jest proporcjonalne do ilości pamięci, jaką górnik wnosi do sieci Filecoin. W przeciwieństwie do innych sieci, górnicy Filecoin „kopią pamięcią” i to właśnie ilość udostępnianego sieci miejsca na dysku jest wyznacznikiem mocy górnika. Oprócz tego górnicy muszą zablokować proporcjonalną do dostarczonego miejsca stawkę w postaci FIL, która działa jako zabezpieczenie i może zostać utracona w przypadku szkodliwych zachowań.

Drugą grupą górników są Retrieval miners, czyli odzyskujący. Zawierają transakcje odzyskiwania z klientami, czyli dostarczają klientowi określony plik w zamian za FIL. W przeciwieństwie do górników zajmujących się przechowywaniem, górnicy odzyskujący nie są dodatkowo nagradzani możliwością dodawania bloków do łańcucha Filecoin. Należy zaznaczyć, że proces negocjacji dotyczących odzyskania odbywa się głównie poza łańcuchem.

Konsensus i Algorytmy Filecoin

Storage Power Consensus (SPC) jest głównym interfejsem, który umożliwia węzłom Filecoin uzgadnianie stanu systemu. Storage Power Consensus uwzględnia efektywną władzę nad konsensusem poszczególnych górników  w swojej „tabeli mocy”, która śledzi moc wszystkich górników. SPC obsługuje również Expected Consensus.

Expected Consensus (EC) jest protokołem konsensusu. Zajmuje się forkami, ostatecznością oraz przede wszystkim przeprowadzaniem wyborów lidera w każdej epoce, która w Filecoin trwa 30 sekund, w których określona liczba uczestników może zaproponować blok. EC gwarantuje, że zwycięzcy pozostaną anonimowi, dopóki nie ujawnią się, przedstawiając dowód, że zostali wybrani. Każdy zwycięski górnik może złożyć jeden taki dowód na rundę i zostanie nagrodzony proporcjonalnie do jego „mocy”, czyli ilości miejsca, jaką zapewnia. Każdy wygrywający górnik tworzy również dowód przechowywania (WinningPoSt).

Łańcuch bloków Filecoin opiera się o „Tipset”, jest to zestaw bloków, z których każdy ma tę samą wysokość. Dzięki temu Filecoin może pozwolić wielu górnikom na tworzenie bloków w tej samej epoce, czyli po prostu w tym samym czasie może zostać dodane kilka bloków, zamiast jednego. 

Proof of Replication (PoRep)

Jest to sposób w jaki, górnicy udowadniają, że otrzymali wszystkie dane i że zakodowali je w sposób unikalny dla danego górnika, korzystając z posiadanej przez nich fizycznej pamięci masowej i w sposób, którego żaden inny górnik nie jest w stanie powielić. Oznacza to, że dwie oferty na te same dane nie mogą zostać ponownie wykorzystane na tym samym dysku. Ten dowód jest dostarczany w momencie rozpoczęcia transakcji i zakończeniu operacji pieczętowania. 

Dane są przechowywane w tzw. sektorach i muszą być mniejsze niż maksymalny jego rozmiar, który ogranicza protokół. W momencie pisania artykułu Filecoin wspiera sektory 32GiB i 64GiB. (GiB to gibibajt, troszkę więcej niż gigabajt). Jeśli dane są większe niż sektor muszą zostać podzielone. Co istotne dane nie są zaszyfrowane, ale można w sieci Filecoin takie przechowywać, o ile samemu się je wcześniej zaszyfruje. 

Sektor w sieci Filecoin musi być zapieczętowany. Pieczętowanie to złożony obliczeniowo i powolny proces, który generuje unikatową reprezentację danych w postaci kryptograficznego dowodu.

Proof of Spacetime (PoSt)

Od momentu „podpisania umowy” z klientem, czyli po zakończeniu Proof of Replication, górnik musi przechowywać jego dane i udowadniać, że to robi właśnie poprzez Proof of Spacetime.

Proof of Spacetime to procedura, podczas której górnicy otrzymują kryptograficzne wyzwania, na które można poprawnie odpowiedzieć tylko wtedy, gdy faktycznie przechowuje się kopię zapieczętowanych danych.

Istnieją dwa rodzaje wyzwań, które są realizowane w ramach procesu PoSt, a mianowicie WinningPoSt i WindowPoSt.

WinningPoSt gwarantuje, że górnik posiada kopię danych w określonym momencie, czyli gdy zostanie wybrany do wydobycia następnego bloku Filecoin przez algorytm Expected Consensus. WindowPoSt gwarantuje, że górnik cały czas od momentu umowy, przechowywał kopię danych.


Wyniki zarówno PoRep jak i PoSt są kompresowane do zk-SNARK. W skrócie, zk-SNARKs zaoszczędzają mnóstwo miejsca na łańcuchu i pozwalają udowodnić, że oba „Proof-y” zostały wykonane prawidłowo, bez konieczności ujawniania szczegółów samego dowodu lub danych, na których się opiera. Proces tworzenia zk-SNARKs jest powolny, ale ich weryfikacja bardzo szybka.

Kryptowaluta FIL

FIL to natywna waluta sieci, która ma dość dość sporo do roboty w Filecoin oprócz oczywistego pełnienia obowiązków waluty do opłat transakcyjnych. Po pierwsze jest używana jako zabezpieczenie, które każdy “górnik pamięci” musi wnieść. Ma to na celu zapewnić, że będzie on działał zgodnie z zasadami, jeśli nie, straci on swoje zabezpieczenie. W momencie pisania artykułu zabezpieczenie wstępne wynosi 6 FIL za każdy TiB.

Po drugie każdy wynajem danych i odzyskanie danych to opłaty, które są pobierane przez górników właśnie w FIL. 

Po trzecie służy do nagradzania (nagrody inflacyjne) górników biorących udział w konsensusie. 

Filecoin token

Podaż została ograniczona do 2 miliardów FIL. Ponad połowa została przeznaczona jako nagrody dla górników. 15% zostało przeznaczone na rozwój ekonomii i zachęcania górników, a reszta według powyższej grafiki została przeznaczona dla Protocol Labs, twórców projektu Filecoin, zespołu, fundacji i sprzedana podczas ICO w 2017 roku.


Opłaty

Każda „wiadomość”, czyli transakcja w sieci kosztuje FIL. System opłat jest podobny do tego, który zostanie wprowadzony w Ethereum podczas aktualizacji 1559. Występuje opłata bazowa „base fee”, która jest spalana. Base Fee jest automatycznie dostosowywana zgodnie z parametrami przeciążenia sieci. Występuje także dodatkowa opłata dla górnika, którą otrzyma za przetworzenie naszej operacji.

Podsumowanie

Filecoin pozwala użytkownikom na przechowywanie swoich plików w sposób zdecentralizowany. Dzięki zachętom oraz karom finansowym uczestnicy sieci są zachęcani do działania w zgodzie z obowiązującymi zasadami, a wszystkie dane są stale weryfikowane przez sieć. Cały proces przechowywania danych dla przeciętnego użytkownika nie jest jeszcze zbyt wygodny i wymaga przejścia kilku kroków, ale szczegółowe poradniki na pewno pomagają tym zainteresowanym.

Cała sieć szybko się rozwija i zapewnia ogrom miejsca, które jest tak potrzebne nie tylko w świecie, jaki znamy, ale także, w tym zdecentralizowanym. W momencie pisania artykułu Filecoin pozwala na przechowywanie ponad 8 eksabajtów danych i choć brzmi to dziwnie, to nadal niewiele.

Popularne