Esitatud on detsentraliseeritud faili süsteemi IPFS 0.9 (InterPlanetary File System) versioon, mis loob globaalset versioonitud failide hoidlat, mis on rajatud P2P-võrgu kujul, mis koosneb osalejate süsteemidest. IPFS ühendab ideid, mida on varem rakendatud sellistes süsteemides nagu Git, BitTorrent, Kademlia, SFS ja Web, ning sarnaneb ühtse "parvega" BitTorrent, kus osalejad jagavad faile, vahetades Git-objekte. IPFS eristub sisu aadressimise mitte asukoha ja juhuslike nimede poolest. Viidatud teostuse kood on kirjutatud Go keeles ja jagatakse litsentside all Apache 2.0 ja MIT.
Uues versioonis:
- Soodsatel jalgateway'l on võimalus laadida üles mis tahes IPLD (InterPlanetary Linked Data, ressursside aadressimiseks hash'ide põhjal loodud nimede ruum) graafe, kasutades /api/v0/dag/export töötlejat, mis täidab funktsiooni, mis vastab käsule 'ipfs dag export'. Eksport toimub DAG arhiiviformaadis (suunatud tsükliline graaf). Saadud IPLD annab kasutajale võimaluse veenduda, et avaliku gateway kaudu üles laaditud andmed vastavad taotletud sümboolsele nimele (näiteks, saades faili '/ipfs/bafyexample', saab kontrollida selle vastavust sisu hash'iga, mis oli algselt seotud sümboolse nimega).
- On antud võimalus määrata oma DNS-resolutor, mis kasutab protokolli 'DNS over HTTPS', mida rakendatakse opsüsteemi seadetes määratud resolutori asemel. Samuti on võimalik määrata resolutor eraldi of domains esimese taseme. DNSLinki, mehhanismi harilike DNS-nimede sidumiseks IPFS-aadressidega, korraldatud resolveri valikut saab kasutada ICANN-iga mitteseotud domeeninimede loomiseks, näiteks saab kasutada resolverit "https://eth.link/dns-query", et hallata esimese taseme domeene ".eth", mis ei ole ametlikult ICANN-is kinnitatud.
- Uuendatud veebiliidest (WebUI), mis pakub eksperimentaalset tuge väliste teenuste kinnitamiseks (sarnane käsule "ipfs pin remote service"). Muudetud on ekraanide kujundust failide ja piramide haldamiseks.
- CLI-liideses on lisatud võimalus eksportida võtmeid käsuga "ipfs key export" ilma ipfs taustaprotsessi peatamata.
- Lisatud on eksperimentaalne DHT-klient andmete otsimiseks hajutatud hash-tabeli abil, mis erineb IPNS-il põhinevast lahendusest kõrgema tootlikkuse poolest.
- Komponendid migreerimiseks uusimatesse versioonidesse go-ipfs on jagatud eraldi pakettideks, et kiirendada laadimist ja lihtsustada uuenduste korraldamist konfiguratsioonides, kus on enda pistikprogrammid. Uuenduste laadimise protsess on automatiseeritud IPFS kaudu ning lisatud on seadistused, et lihtsustada uuenduste rakendamist olukordades, kus internetiühendus puudub või on tulemüüriga blokeeritud.
Tuletame meelde, et IPFS-is on faili juurde pääsemiseks link otseselt seotud selle sisuga ja sisaldab sisu krüptograafilist räsiväärtust. Faili aadressi ei saa juhuslikult ümber nimetada; see võib muutuda ainult sisu muutmisel. Samuti ei ole võimalik faili muuta ilma aadressi muutmata (vana versioon jääb oma aadressile, uus versioon on kättesaadav uue aadressi kaudu, kuna faili sisu räsiväärtus muutub). Arvestades, et faili identifikaator muutub iga kord muutmise korral, et mitte iga kord uusi linke edastada, pakuvad teenused püsivate aadresside sidumist, arvestades erinevaid faili versioone (IPNS), või pseudonüümi kinnitamist sarnasel viisil traditsiooniliste FS ja DNS-iga (MFS (Muudetav Failisüsteem) ja DNSLink).
Nagu BitTorreni puhul, salvestatakse andmed otse osalejate süsteemides, kes vahetavad teavet P2P-režiimis, ilma tsentraliseeritud sõlmedele tuginemiseta. Kui on vaja teatud sisuga faili saada, leiab süsteem osalejad, kellel see fail olemas on, ja edastab selle nende süsteemidest tükkidena mitme voogude kaudu. Pärast faili oma süsteemi allalaadimist muutub osaleja automaatselt selle jagamise punktiks. Võrgus osalejate määramiseks, kelle sõlmedes on huvipakkuv sisu, kasutatakse jaotatud räsimistabelit (DHT). Globaalset IPFS-i failisüsteemi saab kasutada HTTP-protokolli kaudu või mountida virtuaalse failisüsteemina /ipfs FUSE mooduli abil.
IPFS aitab lahendada selliseid probleeme nagu salvestamise usaldusväärsus (kui algne salvestus seadme rikki läheb, saab failide alla laadida teiste kasutajate süsteemidest), sisuruumi tsenseerimise vastu (sisu blokeerimiseks tuleb blokeerida kõik süsteemid, kus andmed on olemas) ja ligipääsu korraldamine, kui otsest internetiühendust ei ole või kanali kvaliteet on halb (andmeid saab alla laadida lähimalt kohaliku võrgu osaliselt). Lisaks failide salvestamisele ja andmete vahetamisele võib IPFS-i kasutada ka uute teenuste loomiseks, näiteks serveritest sõltumatute veebisaitide opereerimiseks või jaotatud rakenduste loomise aluseks.

Allikas: opennet.ru
