IPFS, l'alternativa decentralizzata sicura a HTTP?

IPFS si propone come il protocollo per realizzare un web in logica P2P. Con benefici anche lato sicurezza.

Tecnologie/Scenari
Quando il modello del cloud pubblico "puro" prometteva di affermarsi come nuovo modello di computing, i critici hanno messo subito in evidenza che centralizzare tutto nei data center dei cloud provider era un rischio. Un cloud provider generico può non riuscire a sostenere il proprio business e avere difficoltà ad offrire i suoi servizi. E la centralizzazione è comunque sempre una vulnerabilità: che succede se le risorse centralizzate non sono più raggiungibili?

Critiche sensate, tanto che oggi si parla quasi esclusivamente di multicloud ibrido quando si pensa alla transizione alla "nuvola" da parte delle imprese. E sono critiche che, da tempo, si pongono anche al modello più generale del web. Inteso non solo e non tanto come insieme di pagine da consultare. Ma come insieme di risorse che transitano per il mondo seguendo i dettami dell'ormai notissimo ma datato protocollo HTTP.

Ci sono diversi progetti che puntano ad abbandonare il modello del web "centralizzato", in cui - generalizzando - le risorse sono su un server e chi vuole consultarle deve accedervi via HTTP. Con conseguenze che ben conosciamo lato sicurezza, dagli attacchi man-in-the-middle agli attacchi DDoS. Che mettono completamente fuori gioco un server, impedendo a chiunque di connettervisi.
shahadat rahman internet web unsplashI modelli alternativi sono in logica peer-to-peer. Invece di centralizzare la conservazione delle risorse su pochi server, la allarghiamo a centinaia, migliaia di nodi autonomi. Un po' come - fatte le debite distinzioni - funziona la condivisione P2P di Emule, Torrent e compagnia. Sembra una idea astrusa ma non lo è. E i grandi nomi del web e del mondo dei contenuti, da Google a Netflix, sanno bene che mantenere le prestazioni di Internet come autostrada per i contenuti multimediali diventa sempre più complesso. Con decine di milioni di utenti che chiedono performance al massimo e altrettanti che su stanno affacciando all'Internet ad alte prestazioni.

Il problema, insomma, è noto. Una forma di decentralizzazione è già attuata dalle cosiddette Content Delivery Network. Ad un livello più basso IPFS - la sigla sta per InterPlanetary File System - è la risposta tecnologica che oggi sembra più concreta ai limiti di HTTP. Il protocollo promette infatti di sostituire HTTP stesso, adottando come base tecnica e concettuale un modello di decentralizzazione delle risorse.

IPFS: come funziona

In IPFS il modello client-server di HTTP è abbandonato a favore di una architettura P2P distribuita su tutto il globo. Come indica la denominazione, IPFS è pensato come filesystem. Quindi dobbiamo considerare che la sua funzione di base è consentire l'accesso ad elementi di tipo file e altre strutture dati. I vari nodi di una rete IPFS sono posti allo stesso livello gerarchico e conservano nello storage locale un certo numero di file. Quando è necessario scaricare oggetti che non sono in locale, un nodo si connette con gli altri nodi che posseggono quel particolare elemento.
dark web 1Se il funzionamento di IPFS assomiglia al P2P di Emule, è anche perché tecnicamente si basa su quella esperienza e su altre simili. Anche il trasferimento dei file da un nodo all'altro avviene con un protocollo a blocchi - BitSwap - simile a BitTorrent. È previsto anche un sistema di precedenze e crediti per il download, come accade nel P2P e per la stessa ragione: incentivare un nodo a mettere a disposizione degli altri contenuti di tutti i tipi, anche quelli che non servono direttamente a quel nodo.

La logica del P2P comporta una essenziale differenza tra IPFS e HTTP. In quest'ultimo è necessario sapere a cosa vogliamo accedere e in quale server si trova. Un insieme di informazioni codificato nel tipo di chiamata che ben conosciamo: http://nomeserver/percorso/.../nomeoggetto. In IPFS serve sapere solo cosa cerchiamo. Ciascun file un identificatore unico (tecnicamente, una forma di content addressing) che deriva dal contenuto e permette di ricercarlo in una rete IPFS.

Una copia IPFS della pagina di Wikipedia dedicata a Van Gogh, ad esempio, ha come "indirizzo" ipfs://bafybeiemxf5abjwjbikoz4mc3a3dla6ual3jsgpdr4cjr3oz3evfyavhwq/wiki/Vincent_van_Gogh.html. La parte di stringa incomprensibile è l'hash crittografico della pagina. Questo tipo di indirizzo ha due caratteristiche importanti che sono due elementi chiave di IPFS. È immutabile, a meno di non cambiare il nome o il contenuto del file HTML. Permette una verifica di sicurezza implicita: il contenuto del file deve produrre l'hash che lo identifica, altrimenti qualcosa non va.

I vantaggi della decentralizzazione di IPFS

Il ragionamento tecnico dietro a IPFS è molto articolato. Lato sicurezza, che è il nostro ambito qui, va notato che il suo approcci presenta diversi vantaggi. Come appena accennato, lo schema di denominazione dei file permette un primo importante controllo di sicurezza sulla non modificabilità dei contenuti. Un corollario di questa caratteristica è che IPFS ha nativamente funzioni di (quasi) versioning, in parte ricavate dai protocolli di Git.
computer technology texture number wall web 593221 1Altro punto chiave: un filesystem distribuito P2P è intrinsecamente più sicuro di una sistema centralizzato. Se un server non è più raggiungibile, non lo sono nemmeno tutti i suoi file. In IPFS, un file può essere replicato su diversi nodi ed essere per questo (quasi) sempre raggiungibile. Oltretutto senza doversi per forza connettere ad un particolare server, che può essere anche remoto e per il quale il download di un file comporta un potenziale spreco di banda internazionale. Anche per questo IPFS è una opzione interessante per le nazioni dove le reti non sono sviluppate e a relativamente basso costo come da noi.

Toccando aspetti meno tecnici, la decentralizzazione dei contenuti è anche un deterrente anche verso la loro censura o la loro scomparsa da Internet. Un "indirizzo" IPFS non può scomparire o essere cambiato. Se un documento non viene fisicamente eliminato da tutti i nodi che lo ospitano, sarà sempre raggiungibile. Non a caso, esiste davvero una copia di Wikipedia per IPFS, raggiungibile anche nelle nazioni che filtrano il traffico HTTP.

Su IPFS si sta lavorando e l'interesse certamente c'è. Ma sarebbe esagerato dire che ha un brillante futuro dietro l'angolo. Le prospettive sono buone come lo sono per molte altre tecnologie legate alla decentralizzazione, in primis blockchain. Ci sono browser che supportano nativamente il protocollo (come Brave) e varie implementazioni per sperimentarlo. Il resto, è ancora da venire.
Se questo articolo ti è piaciuto e vuoi rimanere sempre informato con le notizie di SecurityOpenLab.it iscriviti alla nostra Newsletter gratuita.

Notizie correlate

Speciali Tutti gli speciali

Speciale sicurezza mobile

Speciale

Proteggere il nuovo smart working

Speciale

Sicurezza cloud native

Speciale

Backup e protezione dei dati

Speciale

Speciale video sorveglianza

Calendario Tutto

Iscriviti alla nostra newsletter

Soluzioni B2B per il Mercato delle Imprese e per la Pubblica Amministrazione

Iscriviti alla newsletter

contatori