Cos'è IPFS

IPFS sta per Interplanetary File System ed è un protocollo ipermediale distribuito peer-to-peer open source che mira a funzionare come un file system onnipresente per tutti i dispositivi informatici.

È un progetto complesso e molto ambizioso con alcune implicazioni serie e profonde sullo sviluppo e la struttura futuri di Internet come lo conosciamo.

Perché IPFS e come è nato

L’attuale iterazione di Internet non è così decentralizzata come lo era idealisticamente e inizialmente era percepito. Si basa anche su alcuni protocolli obsoleti che hanno portato a una miriade di problemi. I problemi affrontati da IPFS ruotano attorno a quelli associati all’attuale protocollo HTTP di Internet.

Se non si ha familiarità con la funzione di HTTP relativa a Internet, fondamentalmente è alla base della comunicazione dei dati attraverso l’intera Internet. L’HTTP è stato inventato nel 1991, adottato dai browser Web nel 1996 e stabilisce fondamentalmente come i messaggi vengono trasmessi su Internet e come i browser devono rispondere ai comandi e i server gestiscono le richieste.

Fondamentalmente, è il protocollo alla base del modo in cui navighiamo sul Web e la spina dorsale del protocollo del paradigma client-server.

Http contro IPFS

HTTP vs IPFS, immagine da MaxCDN

Sebbene HTTP ci abbia fornito Internet come lo conosciamo oggi, è diventato obsoleto e dopo più di 20 anni i problemi prevalenti stanno diventando sempre più evidenti.

I problemi chiave derivanti dall’attuale implementazione di HTTP sono il risultato del massiccio aumento del traffico Internet e dei conseguenti punti di stress che sono stati amplificati.

Con l’attuale implementazione di HTTP, sono emersi problemi come i seguenti.

  • Consegna di contenuti inefficiente derivante dal download di file da un singolo server alla volta.
  • I costi elevati della larghezza di banda e la duplicazione dei file portano a uno spazio di archiviazione gonfio.
  • La crescente centralizzazione di server e provider che porta a una maggiore censura su Internet.
  • Fragile storia delle informazioni archiviate su Internet e breve durata delle pagine web.
  • Connessioni intermittenti che portano a un mondo in via di sviluppo offline e velocità di connessione lente.

L’elenco dei problemi continua e non sorprende che una tecnologia vecchia di più di 20 anni stia diventando notevolmente obsoleta in un’epoca di innovazione tecnologica. IPFS fornisce lo storage distribuito e il file system di cui Internet ha bisogno per raggiungere il suo vero potenziale.

Invece di scaricare file da singoli server, in IPFS, chiedi ai peer nella rete di darti un percorso a un file piuttosto che provenire da un server centrale. Ciò consente la distribuzione di dati ad alto volume con alta efficienza, controllo delle versioni storico, reti resilienti e disponibilità persistente di contenuti protetti e verificati tramite hash crittografico e distribuiti su una rete di peer.

Tutto questo sembra promettente, ma come funziona?

Come funziona IPFS?

Fondamentalmente, IPFS è un concetto simile al World Wide Web come lo conosciamo oggi, ma assomiglia più a un singolo sciame BitTorrent che scambia oggetti all’interno di un singolo repository Git.

I file vengono distribuiti tramite un protocollo basato su BitTorrent. È importante sottolineare che IPFS agisce come una sorta di combinazione di Kodemila, BitTorrent e Git per creare un sottosistema distribuito di Internet.

Il design del protocollo fornisce il controllo delle versioni storico di Internet come con Git. A ogni file e a tutti i blocchi al suo interno viene assegnato un identificatore univoco, che è un hash crittografico. I duplicati vengono rimossi attraverso la rete e la cronologia delle versioni viene tracciata per ogni file.

Ciò porta a contenuti persistentemente disponibili in cui le pagine web non scompaiono a causa di un server guasto o di un host web in bancarotta.

Come funziona IPFSCome funziona IPFS, fonte

Inoltre, l’autenticità del contenuto è garantita attraverso questo meccanismo e quando si cercano i file, si chiede essenzialmente alla rete di trovare i nodi che memorizzano il contenuto dietro l’hash di identificazione univoco associato a quel contenuto.

I collegamenti tra i nodi in IPFS assumono la forma di hash crittografici e ciò è possibile grazie al suo Merkle DAG (Grafici aciclici diretti) architettura dei dati. I vantaggi dei DAG Merkle per IPFS includono quanto segue:

  • Indirizzamento del contenuto: il contenuto ha un identificatore univoco che è l’hash crittografico del file.
  • Nessuna duplicazione: i file con lo stesso contenuto non possono essere duplicati e archiviati una sola volta.
  • A prova di manomissione: i dati vengono verificati con il relativo checksum, quindi se l’hash cambia, IPFS saprà che i dati sono stati manomessi.

IPFS collega le strutture dei file tra loro utilizzando i collegamenti Merkle e ogni file può essere trovato con nomi leggibili dall’uomo utilizzando un sistema di denominazione decentralizzato chiamato IPNS.

L’implementazione di Merkle Directed Acyclic Graphs (DAGS) è importante per la funzionalità sottostante del protocollo, ma è più tecnica rispetto allo scopo di questo articolo.

Se sei interessato a saperne di più su questo aspetto di IPFS, puoi trovare informazioni molto più dettagliate su IPFS Pagina GitHub e altro su come funzionano gli alberi Merkle qui.

Ogni nodo memorizza solo il contenuto a cui è interessato e indicizza le informazioni che gli consentono di capire chi sta memorizzando cosa. Il framework per IPFS elimina sostanzialmente la necessità di server centralizzati per fornire agli utenti i contenuti del sito web.

Alla fine, questo concetto potrebbe rendere irrilevante il protocollo HTTP e consentire agli utenti di accedere ai contenuti localmente, offline. Invece di cercare server come con l’attuale infrastruttura di Internet, gli utenti cercheranno ID univoci (hash crittografici), consentendo a milioni di computer di consegnarti il ​​file invece di un solo server.

L’attuale implementazione principale di IPFS è in Go con implementazioni sia in Python che in Javascript in arrivo. È compatibile con Linux, MacOSX, Windows e FreeBSD.

Essendo un progetto open source e guidato dalla comunità, puoi contribuire seguendo le indicazioni e i documenti sulla loro pagina Github o gestisci il tuo nodo IPFS.

Casi d’uso e implicazioni

Esistono già alcuni casi d’uso importanti per IPFS e ne sorgeranno sicuramente altri man mano che il protocollo continua a svilupparsi. L’offerta della nuova architettura P2P distribuita per Internet comporta le sue complessità, ma i vantaggi possono essere visti in qualsiasi cosa, dai massicci risparmi finanziari in termini di archiviazione e larghezza di banda all’integrazione con reti blockchain distribuite.

I vantaggi evidenti che derivano dal modello di archiviazione distribuita di IPFS si applicano a un’archiviazione dei dati molto più efficiente e immutabile, la permanenza insieme ad essa.

I siti Web non saranno più relegati a messaggi di errore 404 ciclici a causa di server inattivi o interruzioni della catena di collegamenti HTTP. Inoltre, sono disponibili vantaggi significativi per i ricercatori in termini di efficienza, in particolare quelli che necessitano di analizzare e analizzare set di dati molto grandi.

Con la prevalenza dei Big Data nella scienza moderna, le prestazioni veloci e l’archiviazione distribuita dei dati offerte da IPFS diventeranno pertinenti per accelerare i progressi.

I fornitori di servizi e i creatori di contenuti possono anche ridurre sostanzialmente i costi associati alla fornitura di grandi quantità di dati ai clienti. Le attuali iterazioni di questo paradigma sono ostacolate dall’aumento dei costi della larghezza di banda e dai fornitori di dati che vengono addebitati per gli accordi di peering.

I costi associati alla fornitura di contenuti attraverso infrastrutture centralizzate di reti interconnesse stanno solo aumentando e creano un ambiente di inefficienza critica e ulteriore centralizzazione nel tentativo di superare questi oneri.

Usi IPFS

Utilizza IPFS, Immagine da Blockchain Mind

Inoltre, la centralizzazione dei server porta allo spionaggio del governo, all’aumento della prevalenza degli attacchi DDoS, alla censura dell’ISP e alla vendita privata di dati.

Come ha affermato Juan Benet, il creatore di IPFS, “I contenuti su IPFS possono passare da intermediari non affidabili senza rinunciare al controllo dei dati o metterli a rischio”.

Infine, l’integrazione di IPFS con la tecnologia blockchain sembra essere perfetta. Utilizzando IPFS all’interno di una transazione blockchain, puoi inserire collegamenti immutabili e permanenti. I timestamp proteggono i tuoi dati senza doverli archiviare effettivamente sulla catena, il che porta a una riduzione del gonfiore della blockchain e fornisce un metodo conveniente per soluzioni off-chain sicure per aiutare la scalabilità delle blockchain.

IPFS è incluso in una serie di piattaforme di criptovaluta e ha il potenziale per aiutare simbioticamente il settore a scalare fornendo l’architettura del file system peer to peer e distribuita necessaria come base per supportare la crescita delle piattaforme di criptovaluta.

Conclusione

Come puoi vedere, IPFS è un protocollo sia tecnicamente che concettualmente complesso che ha grandi ambizioni di rivoluzionare lo scambio di dati attraverso Internet.

HTTP ha avuto successo di per sé e ha aiutato Internet a raggiungere il grande palcoscenico che è oggi, ma stanno emergendo nuove tecnologie e la necessità di un’infrastruttura riformata e distribuita si è manifestata.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me