>_ DevTrendsit

Lingua

Home

Linguaggi

Sezioni

Frontend Backend Mobile DevOps AI / ML GameDev Blockchain Sicurezza
Unknown

Come smettere di dipendere dai server e passare a IPFS

Immagina di aver caricato un progetto interessante o della documentazione, e un mese dopo il link non funziona più. Oppure il server dove era ospitato il tuo contenuto improvvisamente va offline. Nel web a cui siamo abituati (HTTP), cerchiamo i dati per indirizzo: andiamo a un server specifico e speriamo che il file sia ancora lì. IPFS propone di ribaltare questo schema.

Qual è l'idea di base

IPFS (InterPlanetary File System) non è solo un altro storage cloud. È un protocollo che cambia il modo in cui cerchiamo i file. Invece di chiedere "qual è il server che ha questo PDF?", chiediamo alla rete "chi ha il file con questo hash?".

Quando carichi qualcosa su IPFS, il file viene suddiviso in blocchi, e ognuno ottiene un identificatore crittografico univoco (CID). Se due persone caricano lo stesso file, avrà lo stesso CID. Questo risolve automaticamente il problema dei duplicati e ti permette di scaricare parti di un file da più nodi contemporaneamente, come la vecchia cara BitTorrent.

Come funziona nella pratica

La caratteristica principale qui è l'indirizzamento basato sul contenuto. Nel web normale, un link appare così: https://mysite.com/cat.jpg. Se sostituisco il gatto con un cane, il link rimane lo stesso. In IPFS, il link è legato al contenuto stesso. Se il file cambia anche di un solo byte, anche il suo indirizzo cambierà.

Questo offre diversi vantaggi interessanti:

  1. Il contenuto non può essere sostituito silenziosamente.
  2. Se un file è popolare, viene distribuito da centinaia di nodi, il che scarica il tuo server principale.
  3. I dati vivono finché almeno un partecipante della rete ne ha bisogno.

A proposito, il progetto esiste dal 2014. In questo periodo, attorno ad esso è cresciuto un intero stack di tecnologie, come IPLD per lavorare con le strutture dati e libp2p per le connessioni di rete.

Da dove iniziare con lo sviluppo

Se vuoi mettere mano alla tecnologia, il modo più semplice è installare un'app desktop o un client CLI. Dopo l'installazione, il tuo computer diventa un nodo completo della rete.

Aggiungere un file alla rete dalla console è estremamente semplice:

ipfs add my_photo.jpg
# На выходе получаем CID: QmZtmWQZFB...

Ora chiunque nel mondo, conoscendo questo hash, può richiedere il file dalla rete. Se non vuoi far installare agli utenti software speciale, puoi usare gateway pubblici. Il link avrà un aspetto simile a questo: https://ipfs.io/ipfs/QmZtmWQZFB....

Dove questo è davvero utile

Vedo spesso IPFS utilizzato per l'hosting di siti statici. Carichi semplicemente il build della tua app React o Vue su IPFS, e voilà — il tuo sito è distribuito nella rete. Nessun singolo punto di fallimento, nessuna dipendenza da un provider di hosting specifico.

Un altro caso d'uso è la memorizzazione di metadati per NFT o altri asset digitali. Memorizzare immagini sulla blockchain è costoso, e fornire un link a un server normale è rischioso (il server potrebbe andare giù). IPFS è perfetto qui: il link è permanente e immutabile.

Il protocollo funziona ottimamente anche nel calcolo scientifico distribuito o negli archivi, dove è importante garantire che i dati non siano stati manomessi nel tempo.

Ci sono degli svantaggi

Naturalmente. IPFS non è una "chiavetta USB gratuita nel cloud". Se hai aggiunto un file e spento il computer, il file potrebbe scomparire dalla rete se nessun altro è riuscito a scaricarlo o a "fissarlo". Per l'archiviazione permanente, le persone di solito usano servizi speciali (pinning services) o eseguono il proprio nodo-server sempre online.

Un altro punto è la velocità. Cercare un file raro in una enorme rete P2P può richiedere tempo. Non è la risposta istantanea di una CDN centralizzata a cui siamo abituati.

Vale la pena provarlo

Se stai costruendo un'app decentralizzata (dApp) o sei semplicemente stanco di link nei tuoi progetti che muoiono costantemente, vale sicuramente la pena imparare IPFS. È un potente cambio di paradigma nel modo in cui lavoriamo con le informazioni sulla rete.

Il posto migliore per iniziare è la documentazione ufficiale su docs.ipfs.tech. Ha concetti ben scritti e tutorial di installazione chiari. Il progetto è vivo, con una enorme comunità e open source sotto licenza MIT, quindi puoi approfondirlo all'infinito.

Progetti correlati