Se sei stato in cripto per un po ‘, o anche se sei appena entrato in questo mondo decentralizzato, probabilmente hai visto alcune pagine web contrassegnate con “IPFS”. Ma solo perché vedi IPFS e crypto insieme non significa che siano correlati: IPFS in realtà non ha nulla a che fare con criptovalute, token o blockchain direttamente. Si dà il caso che le ragioni alla base della creazione di criptovalute abbiano molte somiglianze con le ragioni alla base della creazione di IPFS.
Facciamo un passo indietro e vediamo cos’è esattamente IPFS.
IPFS, abbreviazione di InterPlanetary File System, è una rete distribuita e decentralizzata per l’archiviazione, l’accesso e la condivisione di file, siti Web, applicazioni e dati.
Queste due parole chiave – distribuito e decentralizzato – potrebbero ricordarti blockchain (e dovrebbero!) ma come abbiamo scritto sopra, IPFS è in realtà una bestia completamente separata. Mentre la blockchain è anche un protocollo distribuito e decentralizzato, IPFS ha obiettivi molto più ampi. Puoi vederlo nel nome stesso: i suoi fondatori volevano creare un sistema veramente decentralizzato che potesse funzionare in luoghi trasversali disconnessi o lontani come i pianeti.
IPFS è stato inventato dall’ingegnere informatico Juan Benet per rendere il web più veloce, più sicuro e più aperto nel 2015. Benet è anche CEO e fondatore del laboratorio di ricerca e sviluppo, Protocol Labs che ha sviluppato IPFS e criptovaluta Filecoin, un metodo di archiviazione digitale e recupero dei dati basato su blockchain. Ne parleremo più avanti.
Per dirla semplicemente, gli ambiziosi obiettivi di IPFS sono di ri-decentralizzare il web salvaguardando i nostri dati e migliorando le applicazioni di utilità.
Cos’è IPFS e come funziona?
Pensa a una biblioteca, dove trovi un libro basato su una posizione specifica determinata da un codice che il bibliotecario può identificare rapidamente. Con Internet, puoi fare qualcosa di simile: digita qualsiasi termine di ricerca su Wikipedia, e voilà, improvvisamente hai una pagina di informazioni pronta su, diciamo, Agatha Christie. Per ottenere informazioni sulla più grande scrittrice poliziesca britannica, il tuo computer deve chiedere a uno dei computer di Wikipedia di preparare quella pagina per te.
Con IPFS (e sì, Wikipedia ha le sue pagine speculari su IPFS), troverai ancora la stessa pagina di informazioni sulla signora Christie – ma la pagina si trova non dalla sua posizione, ma dal suo contenuto, trovato chiedendo a molti computer, in tutto il mondo (o sul pianeta) attraverso IPFS.
Una delle differenze cruciali tra il web centralizzato e quello decentralizzato è il modo in cui identifichiamo e recuperiamo i dati, in base alla posizione o al contenuto. Il web centralizzato si basa su autorità affidabili per ospitare i nostri dati e utilizza URL basati sulla posizione per accedervi.
L’Uniform Resource Locator (URL) è l’indirizzo web che digitiamo nel nostro browser che identifica e rileva la posizione della pagina che stiamo cercando.
Con IPFS, l’onere è sul contenuto per aiutarti a trovare la tua ricerca – questo è chiamato indirizzamento del contenuto.
Identificazione dell’indirizzamento dei contenuti
IPFS cerca le nostre informazioni in base al contenuto piuttosto che alla posizione.
Invece di un server situato centralmente, IPFS è costruito attorno a un sistema decentralizzato peer-to-peer (p2p) che consente agli utenti di ospitare e ricevere contenuti, simile a BitTorrent. Il computer utilizza IPFS per trovare i file ospitati da altri computer e il computer consente di distribuire i file a sua volta.
Gli utenti IPFS possono archiviare e recuperare il contenuto in base a una “impronta digitale” del contenuto stesso.
Un’impronta digitale IPFS è un hash crittografico chiamato “identificatore di contenuto”, un CID.
In termini semplici, quando si cerca qualcosa di specifico con IPFS, si chiede alla rete IPFS di trovare un particolare hash, invece di un particolare indirizzo IP.
In termini più complessi, IPFS è un livello in cima all’archiviazione dei dati in cui chiunque può chiedere un CID e recuperare il contenuto pertinente, corrispondente in modo univoco a quel CID finché qualcuno lo trasmette alla rete.
Su un web decentralizzato e distribuito, tutti possiamo ospitare i dati l’uno dell’altro attraverso questo metodo di “fingerprinting” dei contenuti che si basa sull’hashing crittografico per la sicurezza.
In che modo IPFS è diverso dall’attuale Internet?
Mentre Internet è decentralizzato per natura in quanto non è di proprietà di nessuno o di alcuna azienda, si basa su server centralizzati per funzionare.
Questi server utilizzano, per la maggior parte, Internet Protocol Suites con diverse funzioni: una che riconoscerai è HTTP (Hypertext Transfer Protocol) che gestisce la comunicazione.
Con Internet, i dati vengono archiviati in questi server decentralizzati e trovati per posizione, il che semplifica la distribuzione, la gestione, la protezione dei dati e la scalabilità della capacità di server e client.
In che modo IPFS è diverso da HTTP?
Come sapete, se studiate le criptovalute, i server centralizzati creano un singolo punto di errore: possono essere più facili bersaglio per gli hack, compromettendo la sicurezza e la privacy.
IPFS è stato creato per affrontare questi problemi, rendendo il web più sicuro, efficiente e privato.
Un’altra parola che sentirai spesso è “scalabilità”: IPFS mira a creare un sistema più scalabile di HTTP, consentendo grandi trasferimenti di dati (come film e canzoni) attraverso un sistema P2P (ricordi a qualcuno torrent?).
IPFS è una Blockchain?
In breve, la risposta è no. IPFS è spesso associato alla blockchain a causa della sua natura decentralizzata e distribuita. Condivide anche alcune delle tecnologie impiegate dalla blockchain, come l’architettura Merkle Trees.
Tuttavia, non sono gli stessi, poiché il loro ambito è diverso.
Con blockchain, i nodi della rete condividono un libro mastro e transazioni hash. Con IPFS, il sistema di condivisione file P2P eseguirà l’hash dei file (non delle transazioni) per consentire agli utenti di cercare file basati su tali hash. Analogamente agli hash blockchain, con IPFS, se si modifica un file, il file non viene alterato, ma ne viene creato uno nuovo, il che è eccellente per mantenere un registro permanente delle modifiche.
Blockchain e IPFS sono certamente adatti a lavorare insieme, però. Con IPFS, è possibile archiviare file con enormi quantità di dati. Con blockchain, gli hash hanno una capacità di archiviazione molto limitata. Quindi, perché non utilizzare il meglio di entrambi i protocolli, utilizzando il database pubblico di IPFS e utilizzando la blockchain per renderlo pubblicamente verificabile.
A cosa serve IPFS?
Dalla distribuzione di contenuti ai siti Web, all’archiviazione globale di file e alla facilitazione della condivisione sicura di file e della comunicazione crittografata, IPFS offre l’opportunità di fare diverse grandi cose con i dati.
Con la tecnologia blockchain, IPFS può essere utilizzato come file system complementare per reti pubbliche e altre applicazioni P2P. IPFS potrebbe migliorare significativamente la scalabilità di Ethereum per le applicazioni decentralizzate (DApps). La sua interoperabilità con i contratti intelligenti di Ethereum può aggiungere capacità di archiviazione sicura ed economica all’ecosistema della criptovaluta.
IPFS e FileCoin (il metodo di archiviazione decentralizzato menzionato in precedenza) incentivano l’archiviazione dei dati e possono svolgere un ruolo enorme nello sviluppo di NFT come record immutabili. Semplicemente posizionando un CID IPFS in un NFT, che NFT identificherà e farà riferimento direttamente ai dati molto meglio che con un collegamento HTTP non sicuro. Hai ottenuto tutto questo?
IPFS può essere violato?
Oggi, IPFS è considerato una delle opzioni più sicure per l’archiviazione di risorse digitali come NFT perché gli hash dei dati CID verranno memorizzati solo sul tuo computer. E quando i dati sono richiesti dall’IPFS, i nodi cercano lo stesso hash all’interno dell’asset digitale e dell’archivio dati locale.
Abbiamo già parlato dei problemi con un singolo punto di errore su un server centralizzato: IPFS mira a creare un’alternativa più sicura.
Che cos’è un nodo IPFS?
Abbiamo evidenziato che IPFS è un protocollo P2P per l’archiviazione e la condivisione di contenuti in cui gli utenti eseguono il proprio nodo (server). Se non vuoi diventare troppo tecnico, il modo migliore per pensare ai nodi IPFS è che possono comunicare tra loro e scambiare file. Semplice.
Questa prossima spiegazione è per gli utenti più avanzati.
I nodi IPFS utilizzano tabelle hash distribuite (DHT), un sistema di archiviazione decentralizzato che fornisce ricerca e archiviazione per il mapping delle chiavi ai valori. Ogni nodo in un DHT è responsabile delle chiavi e dei valori mappati e può recuperare in modo efficiente il valore associato a una determinata chiave.
DHT offre un modo semplice per trovare informazioni in una vasta raccolta di dati, perché tutte le chiavi sono organizzate in un formato coerente. Inoltre, l’intero set di chiavi può essere suddiviso e distribuito in modo da consentire di identificare rapidamente dove si trova la coppia chiave/valore. Pensalo come una tabella enorme che memorizza chi ha quali dati.
Sfide IPFS
IPFS rappresenta un ottimo modo per migliorare il decentramento di Internet e la ricerca dei dati. Tuttavia, viene fornito con le sue sfide.
La sfida più grande è che IPFS deve competere con le applicazioni Web2.0 ampiamente adottate,
Mentre il sistema distribuito e decentralizzato rende IPFS migliore dal punto di vista della sicurezza e della privacy, è più oneroso aggiornare poiché le modifiche non possono essere eseguite internamente. Gli aggiornamenti devono essere completati attraverso rilasci regolari e sistematici di nuove versioni.
Un’altra sfida rilevante è la disponibilità dei file. Nei server centralizzati, i file sono mantenuti e controllati da una parte incentivata a mantenere il server costantemente attivo e funzionante. IPFS si basa fortemente su file di dati forniti da nodi separati e, se questi nodi sono offline per qualsiasi motivo, questi file non saranno disponibili.
Tuttavia, le soluzioni stanno già iniziando ad emergere. In IPFS, con una maggiore partecipazione del nodo, il contenuto può essere consegnato dal nodo peer più vicino che ha una copia di quel contenuto, eliminando così la pressione di un singolo nodo e migliorando l’esperienza utente. Come la criptovaluta, IPFS si svilupperà e prospererà in conformità con la crescita dei suoi utenti.