Le criticità dell’attuale rete globale
Partiamo da un semplice presupposto: il www è nato con lo scopo di poter condividere a distanza le ricerche e le informazioni in campo scientifico. Nessuno avrebbe mai immaginato cosa sarebbe diventato in pochi anni.
La rete internet si basa su protocolli sviluppati tra gli anni ’60 e ’70, che per l’epoca in cui i dispositivi collegati ad internet non superavano le migliaia di unità e che i contenuti fruibili erano veramente pochi, erano più che sufficienti, mentre adesso non bastano più.
L’attuale rete globale si basa su un modello client-server, che si porta dietro le seguenti criticità:
- Sistema centralizzato basandosi su un modello client-server, tutte le informazioni sono immagazzinate su una o un numero ristretto di macchine. Se queste macchine subiscono un attacco o vengono escluse dalla rete, i dati potrebbero non essere raggiungibili oppure potrebbero venire persi per sempre.
- Scalabilità basandosi su dei sistemi centralizzati i dati possono essere fruiti solo interrogando queste macchine, che possono essere affette da latenze dovute alla distanza geografica, carico di richieste e possibili attacchi.
Il nuovo modello decentralizzato proposto
Per far fronte ai problemi legati all’utilizzo di un sistema centralizzato e per risolvere i problemi di scalabilità, si è pensato di spostarsi da un modello client-server ad un modello peer-to-peer.
Secondo questo modello tutti i nodi che fanno parte della rete ne prendono parte attivamente. I vantaggi di questo approccio sono che, se si distribuiscono i dati su più nodi all’interno della stessa rete, i problemi di scalabilità e di assenza di servizio in caso di non raggiungibilità di un nodo vengono meno.
Il sistema più famoso che sfrutta questo paradigma e che sta prendendo piede ultimamente è l‘InterPlanetary FileSystem (IPFS).
L’IPFS o InterPlanetary File System, è un file system decentralizzato che cerca di garantire la sicurezza, la privacy e la resistenza alla censura dei tuoi dati. Questa sistema è pubblico e permette di caricare un qualsiasi dato (file di testo, immagine, video, sito web ecc…) ed accederci in un secondo momento tramite un codice hash (una stringa alfanumerica).
Ogni volta che un dato viene caricato ne viene fatta una copia istantanea negli altri nodi della rete.
Per saperne di più: https://ipfs.io/
Le caratteristiche della blockchain
Le blockchain le conosciamo principalmente per quanto riguarda le criptovalute, ma al loro interno nascondo delle caratteristiche che si possono sfruttare per diverse applicazioni:
- Immutabilità quando un dato è scritto all’interno della blockchain non è possibile rimuoverlo e/o modificarlo.
- Controllo e risorse distribuite il controllo è effettuato da tutti i nodi partecipanti alla blockchain e le risorse sono distribuite e decentralizzate.
- Sicurezza non c’è bisogno di un sistema centrale di controllo e i dati da caricare al suo interno possono essere criptati.
Sfruttando queste caratteristiche all’interno della blockchain si possono inserire gli smart contracts, dei programmi che vengono utilizzati per siglare un accordo tra due parti immagazzinando dei dati (Esempio: parti coinvolte, data dell’accordo, prezzo ecc…).
Le decentralized App (dApp)
Mettendo insieme i sistemi decentralizzati e gli smart contracts delle blockchain è possibile sviluppare delle vere e proprie app decentralizzate (dApp).
Anche se attualmente le dApp vere e proprie si contano sulle dita di una mano, molte aziende si stanno lanciando nel settore per innovare i propri sistemi.
Un esempio lo potete trovare visitando il sito di quest’azienda logisitica: https://morpheus.network/