publikimi i sistemit të skedarëve të decentralizuar (Sistemi i Skedarëve InterPlanetar), që krijon një depo globale versionuese skedarësh, e zhvilluar në formën e një rrjeti P2P, i përbërë nga sistemet e pjesëmarrësve. IPFS kombinon ide të realizuara më parë në sisteme si Git, BitTorrent, Kademlia, SFS dhe Web, dhe ngjan me një "trokë" të vetme BitTorrent (pjesëmarrësit në shpërndarje), duke shkëmbyer objekte Git. IPFS karakterizohet nga adresimi sipas përmbajtjes, jo sipas vendit të ruajtjes dhe emrave të rastësishëm. Kodi i implementimit referencë është shkruar në gjuhën Go dhe në nën licencat Apache 2.0 dhe MIT.
Versioni e re e rëndësishme përfshin përparësinë e transportit të bazuar në protokoll. , i cili është një shtesë mbi protokollin UDP, që mbështet shumë lidhje dhe ofron metoda enkriptimi ekuivalente me TLS/SSL. Në IPFS, soketi për marrëdhënie UDP aktivizohet automatikisht në të njëjtën adresë dhe port rrjeti si dhe trajtuesi i transportit të bazuar në TCP. QUIC përdoret si për lidhjet hyrëse ashtu edhe për ato dalëse, ndërsa në rast të papërshtatshmërisë së QUIC, kthehet në përdorimin e TCP kur lidhet me nyje të reja.
Inovacioni i dytë i rëndësishëm ishte mbështetje për transportin e sigurt. , në protokollin dhe i zhvilluar në kuadër të , një strukturi modulare rrjetimi për aplikacionet P2P. Pas inicializimit të lidhjes, gjithë shkëmbimi i të dhënave midis pjesëmarrësve është i enkriptuar dhe i mbrojtur nga përgjojja.
NOISE zëvendësoi transportin , por si metoda prioritet për enkriptimin e lidhjeve midis nyjeve vazhdon të përdoret TLS 1.3. NOISE është mjaft e thjeshtë për t'u zbatuar dhe prezantohet si një transport universor ndër-platformë, i cili mund të zbatohet në gjuhë të ndryshme programuese.
Versioni i ri gjithashtu ofron mundësinë për të shtuar faqet "404 Not Found" të personalizuara dhe ofron mbështetje opsionale për metodën e kodimit Base36, e cila është optimale për të dhënat alfanumerik pa dallim në shkronja, si emrat e domeneve (kur përdoret Base32, çelësat Ed25519 IPNS kalojnë kufirin e madhësisë së subdomenit me dy byte, ndërsa me Base36 përputhen brenda kufirit). Përveç kësaj, janë shtuar opsionet në settings
««, e cila përcakton listën e nyjeve për t'u lidhur, mbajtur lidhjen dhe ribashkuar për të identifikuar lidhjet "ngjitëse" midis piratëve të përdorur shpesh.
Të kujtojmë se në IPFS lidhja për qasje në skedarin është e lidhur drejtpërdrejt me përmbajtjen e tij dhe përmban një hash kriptografik të përmbajtjes. Adresa e skedarit nuk mund të rinovohet rastësisht, ajo mund të ndryshojë vetëm pas ndryshimit të përmbajtjes. Po ashtu, nuk është e mundur të bëhet një ndryshim në skedarin pa ndryshimin e adresës (varianti i vjetër do të mbetet në adresën e tij, ndërsa i ri do të jetë i disponueshëm përmes një adrese tjetër, pasi hash nga përmbajtja e skedarit do të ndryshojë). Duke marrë parasysh se identifikuesi i skedarit ndryshon me çdo ndryshim, për të shmangur çdo herë transmetimin e lidhjeve të reja, ofrohen shërbime për lidhjen e adresave të përhershme, që konsiderojnë versione të ndryshme të skedarit (), ose për lidhjen e një emri të ngjashëm me sistemet traditcionale të skedarëve dhe DNS ( (Sistemi i Skedarëve të Modifikueshëm) dhe ).
Sipas shembullit të BitTorrent, të dhënat ruhen drejtpërdrejt në sistemet e pjesëmarrësve, të cilët shkëmbejnë informacion në mënyrë P2P, pa u lidhur me nyja të centralizuara. Nëse është e nevojshme të merret një skedar me përmbajtje të caktuar, sistemi gjen pjesëmarrës të cilët e kanë atë skedar dhe e dorëzon atë nga sistemet e tyre në pjesë në disa kanale. Pasi skedari të jetë shkarkuar në sistemin e tij, pjesëmarrësi automatikisht bëhet një nga piketat e shpërndarjes së tij. Për të identifikuar pjesëmarrësit e rrjetit, ku ndodhet përmbajtja e interesit tabela e hash të shpërndarë (). Për të aksesuar sistemin global të skedarëve, IPFS mund të përdorë protokollin HTTP ose të montojë një sistem virtual të skedarëve /ipfs përmes modulit FUSE.
IPFS ndihmon në zgjidhjen e problemeve të tilla si besueshmëria e ruajtjes (nëse ruajtja origjinale do të dështojë, skedari mund të shkarkohet nga sistemet e përdoruesve të tjerë), përballimi i censurimit të përmbajtjes (për të bllokuar nevojitet të bllokohen të gjitha sistemet e përdoruesve që kanë një kopje të të dhënave) dhe organizimi i aksesit në mungesë të lidhjes direkte me internetin ose kur cilësia e kanalit të komunikimit është e dobët (mund të shkarkohet informacion përmes pjesëmarrësve më të afërt në rrjetin lokal). Përveç ruajtjes së skedarëve dhe shkëmbimit të të dhënave, IPFS mund të përdoret si një bazë për krijimin e shërbimeve të reja, për shembull, për organizimin e funksionimit të faqeve, që nuk janë të lidhura me serverë, ose për të krijuar aplikacione të shpërndara .
Burimi: opennet.ru
