Izdanje globalnog decentralizovanog sistema datoteka IPFS 0.6

objavljeno izdavanje decentralizovanog sistema datoteka IPFS 0.6 (InterPlanetary File System), koji formira globalno verzionisano skladište datoteka, raspoređeno u obliku P2P mreže formirane od sistema učesnika. IPFS kombinuje ideje koje su prethodno implementirane u sistemima kao što su Git, BitTorrent, Kademlia, SFS i Web, i podseća na jedan BitTorrent „roj“ (vršnjaci koji učestvuju u distribuciji) koji razmenjuju Git objekte. IPFS se razlikuje po adresiranju po sadržaju, a ne po lokaciji i proizvoljnim imenima. Referentni kod implementacije je napisan u Go and distribuira pod licencama Apache 2.0 i MIT.

Nova verzija je značajna po podrazumevanom uključivanju transporta zasnovanog na protokolu QUIC, koji je prekrivač na UDP protokolu koji podržava multipleksiranje višestrukih veza i pruža metode šifriranja ekvivalentne TLS/SSL. U IPFS-u, utičnica za prihvatanje UDP konekcija se automatski pokreće na istoj adresi i mrežnom portu kao i TCP-bazirani transportni rukovalac. QUIC se koristi i za dolazne i za odlazne veze, a pri povezivanju na nove čvorove, ako QUIC nije dostupan, vraća se na korištenje TCP-a.

Druga važna inovacija bila je podrška sigurnom transportu BUKA, zasnovano na protokolu buka i razvijena unutar libp2p, modularni mrežni stog za P2P aplikacije. Nakon inicijalnog pregovaranja o povezivanju, sva naknadna komunikacija između sudionika je šifrirana i zaštićena od prisluškivanja.
BUKA je zamijenila transport SECIO, ali TLS 1.3 i dalje se koristi kao metoda prioriteta za šifriranje veza između čvorova. NOISE je prilično jednostavan za implementaciju i pozicioniran je kao univerzalni cross-platformski transport koji se može implementirati u različitim programskim jezicima.

Novo izdanje također pruža mogućnost dodavanja prilagođenih stranica "404 Not Found" i dodaje opcionalnu podršku za Base36 metod kodiranja, koji je optimalan za alfanumeričke podatke bez obzira na velika i mala slova kao što su imena domena (koristeći Base32, Ed25519 IPNS ključevi su dva bajta veći ograničenje veličine poddomena, a sa Base36 se uklapaju u ograničenje). Osim toga, dodata je opcija u postavke
«peering“, koji definira listu čvorova za povezivanje, održavanje veze i ponovno povezivanje kako bi se identificirale “ljepljive” veze između često korištenih kolega.

Podsjetimo da je u IPFS-u veza za pristup datoteci direktno povezana s njenim sadržajem i uključuje kriptografski hash sadržaja. Adresa datoteke se ne može proizvoljno preimenovati, može se promijeniti samo nakon promjene sadržaja. Isto tako, nemoguće je izvršiti promjenu datoteke bez promjene adrese (stara verzija će ostati na istoj adresi, a nova će biti dostupna preko druge adrese, jer će se promijeniti hash sadržaja datoteke). S obzirom na to da se identifikator fajla mijenja sa svakom promjenom, kako se ne bi svaki put prenosili novi linkovi, pružaju se usluge povezivanja stalnih adresa koje uzimaju u obzir različite verzije fajla (IPNS), ili dodeljivanje pseudonima po analogiji sa tradicionalnim FS i DNS (MFS (Promjenjivi sistem datoteka) i DNSLink).

Po analogiji sa BitTorrentom, podaci se direktno pohranjuju na sisteme učesnika koji razmjenjuju informacije u P2P modu, bez vezivanja za centralizirane čvorove. Ukoliko je potrebno primiti fajl sa određenim sadržajem, sistem pronalazi učesnike koji imaju tu datoteku i šalje je sa svojih sistema u delovima u više niti. Nakon preuzimanja fajla na svoj sistem, učesnik automatski postaje jedan od poena za njegovu distribuciju. Odrediti učesnike mreže na čijim čvorovima je prisutan sadržaj od interesa polovan distribuirana hash tabela (DHT). Za pristup globalnom IPFS FS-u, može se koristiti HTTP protokol ili se virtuelni FS /ipfs može montirati pomoću FUSE modula.

IPFS pomaže u rješavanju problema kao što su pouzdanost skladištenja (ako se originalna pohrana pokvari, datoteka se može preuzeti sa sistema drugih korisnika), otpor cenzuri sadržaja (blokiranje zahtijeva blokiranje svih korisničkih sistema koji imaju kopiju podataka) i organiziranje pristupa u nedostatku direktne veze na Internet ili ako je kvalitet komunikacijskog kanala loš (podatke možete preuzeti preko obližnjih sudionika na lokalnoj mreži). Pored pohranjivanja datoteka i razmjene podataka, IPFS se može koristiti kao osnova za kreiranje novih servisa, na primjer, za organiziranje rada stranica koje nisu vezane za servere ili za kreiranje distribuiranih aplikacije.

Izdanje globalnog decentralizovanog sistema datoteka IPFS 0.6

izvor: opennet.ru

Dodajte komentar