izdaja decentraliziranega datotečnega sistema (InterPlanetary File System), ki oblikuje globalno različico datotek, nameščeno v obliki P2P omrežja, sestavljenega iz sistemov sodelujočih. IPFS združuje ideje, ki so bile prej uresničene v sistemih, kot so Git, BitTorrent, Kademlia, SFS in Web, in spominja na enoten 'roj' BitTorrent (peerji, ki sodelujejo v izmenjavi), ki izmenjuje Git-objekte. IPFS se razlikuje po naslovitvi na osnovi vsebine, ne pa lokacije in poljubnih imen. Koda referenčne implementacije je napisana v jeziku Go in pod licencama Apache 2.0 in MIT.
V novi različici je privzeto onemogočen transport , ki ga je v prejšnji izdaji nadomestil transport , na protokolu in se razvija v okviru modularnega omrežnega sklada za P2P aplikacije. . Kot rezervni transport je ostal TLSv1.3. Skrbnikom vozlišč, ki uporabljajo stare različice IPFS (Go IPFS < 0.5 ali JS IPFS < 0.47), se priporoča, da posodobijo programsko opremo, da se izognejo zmanjšanju zmogljivosti.
V novi različici je prav tako izveden prehod na privzeto uporabo ključev ed25519 namesto RSA. Podpora za stare RSA-ključe je ohranjena, vendar bodo novi ključi zdaj generirani z uporabo algoritma ed25519. Uporaba vgrajenih javnih ključev ed25519 rešuje težavo s shranjevanjem javnih ključev, na primer, za verifikacijo podpisanih podatkov z uporabo ed25519 je dovolj informacij o PeerId. Imena ključev v IPNS-poteh so zdaj kodirana z uporabo algoritma base36 CIDv1 namesto base58btc.
Poleg spremembe privzete vrste ključev je v IPFS 0.7 dodana možnost rotacije identifikacijskih ključev. Za spremembo ključa vozlišča je zdaj mogoče izvesti ukaz "ipfs key rotate". Poleg tega so dodani novi ukazi za uvoz in izvoz ključev ("ipfs key import" in "ipfs key export"), ki jih je mogoče uporabiti za varnostno kopiranje, ter ukaz "ipfs dag stat" za izpis statistik o DAG (Distribuirani aciklični grafi).
Spomnimo, da je v IPFS povezava za dostop do datoteke neposredno povezana z njenim vsebinom in vključuje kriptografski hash vsebine. Naslov datoteke ni mogoče poljubno preimenovati, spremeni se lahko le po spremembi vsebine. Prav tako ni mogoče spremeniti datoteke, ne da bi se spremenil naslov (stara različica bo ostala na prejšnjem naslovu, nova pa bo dostopna preko drugega naslova, saj se bo hash vsebine datoteke spremenil). Glede na to, da se identifikator datoteke spreminja pri vsaki spremembi, so na voljo storitve, ki omogočajo povezovanje trajnih naslovov, ki upoštevajo različne različice datoteke.), ali zaklepanje psevdonima po analogiji s tradicionalnimi FS in DNS ( (Mutable File System) in ).
Po analogiji z BitTorrentom se podatki neposredno shranjujejo na sistemih udeležencev, ki izmenjujejo informacije v načinu P2P, brez vezave na centralizirane vozliške. Ko je treba pridobiti datoteko z določeno vsebino, sistem najde udeležence, ki imajo to datoteko, in jo predaja iz njihovih sistemov v več tokov. Po nalaganju datoteke na svoj sistem, udeleženec samodejno postane ena od točk za njen razdeljevanje. Za določitev udeležencev omrežja, na vozliščih katerih je prisotna zanimiva vsebina distribuirana hash tabela (Za dostop do globalnega IPFS se lahko uporablja protokol HTTP ali se montira virtualni sistem datotek /ipfs s pomočjo modula FUSE.
IPFS pomaga rešiti naloge, kot so zanesljivost shranjevanja (če bo izvorno shranjevanje odpovedalo, lahko datoteko naložimo iz sistemov drugih uporabnikov), nasprotovanje cenzuri vsebine (za blokiranje bo potrebno blokirati vse sisteme uporabnikov, kjer je kopija podatkov) in organizacija dostopa pri odsotnosti neposredne povezave z internetom ali pri slabi kakovosti komunikacijskega kanala (lahko naložimo podatke preko najbližjih članov v lokalnem omrežju). Poleg shranjevanja datotek in izmenjave podatkov se lahko IPFS uporablja tudi kot podlaga za ustvarjanje novih storitev, na primer za organizacijo delovanja spletnih mest, ki niso vezana na strežnike, ali za ustvarjanje decentraliziranih. .
Izvor: opennet.ru
