Cosa si intende con peer-to-peer (P2P)?
Nella tecnologia finanziaria, il termine peer-to-peer si riferisce di solito allo scambio di criptovalute o asset digitali attraverso un network distribuito. Una piattaforma P2P consente ad acquirenti e venditori di eseguire operazioni senza necessità di intermediari. In alcuni casi, anche i siti web possono fornire un ambiente P2P che collega creditori e debitori.
L'architettura P2P può essere applicata a vari casi d'uso, ma è diventata particolarmente popolare negli anni '90 con la creazione dei primi programmi per la condivisione di file. Oggi, i network P2P sono alla base di gran parte delle criptovalute, occupando un'importante fetta del settore della blockchain. Tuttavia, vengono anche sfruttati in altre applicazioni informatiche distribuite, tra cui motori di ricerca web, piattaforme di streaming, mercati online e il protocollo web InterPlanetary File System (IPFS).
Come funziona il P2P?
In sostanza, un sistema P2P è mantenuto da un network distribuito di utenti. In genere, non presenta un amministratore o server centrale in quanto ogni nodo possiede una copia dei file - agendo sia da client che da server per altri nodi. Quindi, ciascun nodo può scaricare file da altri nodi o caricare file per loro. Questo è ciò che separa i network P2P dai più tradizionali sistemi client-server, in cui i dispositivi client scaricano file da un server centralizzato.
Nei network P2P, i dispositivi connessi condividono file che sono archiviati nei loro dischi rigidi. Usando applicazioni software progettate per mediare la condivisione di dati, gli utenti possono consultare altri dispositivi nel network per trovare e scaricare file. Una volta che un utente ha scaricato un determinato file, può agire da fonte per quel file.
In altre parole, quando un nodo agisce da client, scarica file da altri nodi nel network. Ma quando operano in veste di server, sono la fonte da cui gli altri nodi possono scaricare file. In pratica, però, entrambe le funzioni possono essere eseguite allo stesso tempo (ad es., scaricare il file A e caricare il file B).
Dato che ogni nodo archivia, trasmette e riceve file, i network P2P tendono ad essere più veloci ed efficienti man mano che la loro base di utenti si allarga. Inoltre, la loro architettura distribuita rende i sistemi P2P molto resistenti agli attacchi informatici. A differenza dei modelli tradizionali, i network P2P non hanno un singolo punto di vulnerabilità.
Possiamo categorizzare i sistemi peer-to-peer in base alla loro architettura. I tre tipi principali di network P2P sono chiamati non strutturati, strutturati e ibridi.
Network P2P non strutturati
I network P2P non strutturati non presentano nessuna organizzazione specifica dei nodi. I partecipanti comunicano tra di loro in modo casuale. Questi sistemi sono considerati resistenti contro attività di churn elevato (ovvero, diversi nodi si uniscono e lasciano il network frequentemente).
Anche se più facili da costruire, i network P2P non strutturati potrebbero richiedere un maggiore uso della CPU e della memoria in quanto le query di ricerca vengono trasmesse al più alto numero di peer possibile. Questo tende a inondare il network con query, soprattutto se il contenuto desiderato è offerto da un numero esiguo di nodi.
Network P2P strutturati
Anche se i network strutturati possono essere più efficienti, tendono a presentare livelli di centralizzazione più elevati, e in genere comportano costi di setup e manutenzione più alti. Inoltre, i network strutturati sono meno resistenti ad attività di churn elevato.
Network P2P ibridi
I network P2P ibridi combinano il modello client-server convenzionale con alcuni aspetti dell'architettura peer-to-peer. Per esempio, potrebbero istituire un server centrale che facilita la connessione tra peer.
Rispetto agli altri due tipi, i modelli ibridi tendono a presentare prestazioni generali migliori. Solitamente combinano alcuni dei vantaggi centrali di ogni approccio, raggiungendo contemporaneamente livelli di efficienza e decentralizzazione significativi.
Distribuito vs. decentralizzato
Anche se l'architettura P2P è intrinsicamente distribuita, è importante notare che ci sono vari gradi di decentralizzazione. Quindi, non tutti i network P2P sono decentralizzati.
Infatti, molti sistemi dipendono da un'autorità centrale che guida l'attività del network, cosa che li rende piuttosto centralizzati. Per esempio, alcuni sistemi P2P per la condivisione di file permettono agli utenti di cercare e scaricare file da altri utenti, ma non consentono di partecipare ad altri processi, come la gestione delle query di ricerca.
Inoltre, si potrebbe dire che anche i network piccoli controllati da una base utenti limitata con obiettivi condivisi abbiano un maggiore grado di centralizzazione, nonostante l'assenza di un'infrastruttura di rete centralizzata.
Il ruolo del P2P nelle blockchain
Quindi, non ci sono banche che elaborano o registrano transazioni nel network di Bitcoin. Invece, la blockchain agisce come un registro digitale che archivia pubblicamente tutte le attività. In sostanza, ogni nodo possiede una copia della blockchain e la confronta con gli altri nodi per garantire che i dati siano accurati. Il network respinge rapidamente qualsiasi inesattezza o attività disonesta.
Vantaggi
Oltre alla sicurezza, l'utilizzo dell'architettura P2P nelle blockchain di criptovalute le rende anche resistenti alla censura da parte di autorità centrali. A differenza dei normali conti bancari, gli wallet di criptovalute non possono essere congelati o prosciugati dai governi. Questa resistenza si estende anche ai tentativi di censura da parte di piattaforme di contenuti e di pagamento private. Alcuni creatori di contenuti e venditori online hanno adottato i pagamenti in criptovalute come un modo per evitare che i propri pagamenti vengano bloccati da terze parti.
Limiti
Nonostante i numerosi vantaggi, l'uso di network P2P nelle blockchain ha anche alcuni limiti.
Inoltre, la natura distribuita dei network P2P li rende relativamente difficili da controllare e regolare, non solo nel settore della blockchain. Diverse applicazioni e compagnie P2P sono state coinvolte con attività illegali e violazioni dei diritti d'autore.
In chiusura
L'architettura peer-to-peer può essere sviluppata e utilizzata in molti modi diversi, ed è alla base delle blockchain che rendono possibili le criptovalute. Distribuendo i registri delle transazioni su grandi network di nodi, l'architettura P2P offre sicurezza, decentralizzazione e resistenza alla censura.
Oltre alla loro utilità nella tecnologia blockchain, i sistemi P2P possono anche servire altre applicazioni informatiche distribuite, dai network per la condivisione di file alle piattaforme di scambio di energia.