Plasma Cash: soluzione a problemi di hack e scalabilità per Ethereum

Plasma Cash: soluzione a problemi di hack e scalabilità per Ethereum

By Benson Toti - min. di lettura
Aggiornato 16 March 2023

Vitalik Buterin, il co-fondatore di Ethereum, ha presentato una soluzione di scala Blockchain. Il nome di questa è Plasma Cash, una versione ancora più “scalabile” di quella già conosciuta con il nome di Plasma. L’idea è stata proposta durante la Conferenza della Comunità Ethereum tenutasi venerdì 9 marzo a Parigi, trasmessa in diretta su YouTube. I dettagli a seguire.

plasma ethereum

Cos’è Plasma Cash?

La soluzione plasma “originale” è una soluzione di scalabilità sviluppato per la Blockchain di Ethereum, introdotta da Buterin e dal creatore del Lightning Network, Joseph Poon, nell’agosto del 2017. Plasma funziona ottimizzando i dati che passano attraverso la Blockchain, riducendo le commissioni di transazione per i smart contracts e le applicazioni decentralizzate (DApp).

Plasma Cash, a sua volta, è stato sviluppato da Buterin e dagli sviluppatori Dan Robinson e Karl Floersch. Il problema con la scalabilità di Plasma, secondo Buterin, è che ogni utente deve scaricare e autenticare ogni blocco dedicato a Plasma u questo impedisce una scalabilità esponenziale.

Perché Plasma Cash è meglio di Plasma?

Per spiegare il funzionamento di Plasma Cash, Buterin fornisce l’esempio che se un utente deposita una certa quantità di ETH in un exchange o in un servizio di terze parti, un token Plasma verrebbe creata con lo stesso valore dell’eth e un ID univoco che non può essere fuso o scisso.
C’è una differenza rispetto plasma Plasma. La differenza in questione è che Plasma Cash richiederebbe agli utenti di prestare attenzione solo ai blocchi che contengono token di cui vogliono tenere traccia:

“In realtà, un utente deve soltanto verificare la disponibilità e la correttezza della blockchain plasma solo[…] all’indice specifico del token, dei token di cui è proprietario e dei token che gli interessano.”

Una spiegazione più dettagliata

Buterin stesso spiega che la versione Cash di Plasma si differenza dal suo progenitore principalmente in due modi:

  1. Ogni singolo deposito corrisponde ad un token ID univoco; i token sono indivisibili e non possono essere fusi.
  2. Invece di memorizzare le transazioni in un albero binario Merkle in ordine di txindex, RIchiediamo che siano memorizzate in sparse Merkle Tree semplice o in un Patricia Tree, l’indice sarebbe l’ ID del token che viene speso.

Un miglioramento per la sicurezza

Bisogna tenere conto che questo permette ad un utente di avere una prova piuttosto compatta che il suo token è valido: tutte le transazioni dal momento in cui il token è stato depositato che rappresentano la storia di tale token, più una prova di non inclusione per ogni blocco che non contiene una transazione che spende il token, per verificare che il token non è stato speso due volte.

Quindi, un operatore Plasma potrebbe semplicemente mantenere i collegamenti con ogni utente, e ogni volta che viene creato un blocco pubblicano solo le bozze, non i dati relativi ai token che non possiedono. È chiaramente il caso che qualsiasi dato che non fa parte di queste prove non potrebbe essere utilizzato per transazioni fraudolente o spendere due volte il token dell’utente, quindi l’utente è sicuro.

Una migliore scalabilità

L’operatore della catena Plasma potrebbe essere sottoposto a sharding. Questo significa che praticamente non c’è alcun limite alla scalabilità del sistema dal punto di vista dell’operatore della catena o degli utenti. La limitazione è che se i sistemi simili a Plasma (e i sistemi di canale) iniziano ad elaborare un carico di transazione molto elevato, gli attacchi mass challenge possono sovraccaricare la blockchain e impedire ad alcuni utenti di uscire. Questo tipo di configurazione sembra ideale per applicazioni a bassissimo o medio stato ma ad altissime prestazioni, come le microtransazioni e gli exchange.

Inoltre è possibile eliminare la necessità di conferme. Per implementare questo sistema occorre gli utenti onesti mantengano la chiave di proprietà dei token non spesi fino a quando non hanno completamente autenticato l’intera storia di transazioni di quel token. Nel caso in cui una catena Plasma inizi ad includere dati non disponibili o non validi mentre una transazione è in corso può accadere appaiano spese doppie non valide.

Una soluzione alle hack degli exchange?

Buterin ha parlato anche a riguardo delle applicazioni pratiche di Plasma Cash. Il cofondatore di Ethereum, infatti, vede la possibilità per gli exchange di sfruttare la tecnologia per diventare meno vulnerabile agli hacker.

Poiché ogni token plasma ha un proprietario questi non sono completamente fungibili o intercambiabili. Questo significa che nessuno può prendere possesso del token di un altro utente senza che lui venga avvisato. In questo caso, il proprietario del token impedirebbe la potenziale transazione fraudolenta attraverso il “sistema di reclamo”. Questo sarebbe possibile per mezzo dei “dati di prova” della storia del loro token.

Buterin afferma che anche se si verificasse un hack su un exchange il quale utilizza Plasma Cash, gli utenti non perderebbero i loro fondi:

“Indipendentemente da ciò che accade nell’exchange, gli utenti possono recuperare i loro fondi per mezzo della procedura di uscita Plasma.”

Buterin conclude il suo discorso con una prognosi positiva per il futuro utilizzo di Plasma Cash:

“Quando il prossimo grande exchange con giro d’affari da multipli miliardi di dollari programmato da uno sviluppatore totalmente incompetente verrà hackerato, nessuno perderà soldi.”

Conclusione

Plasma sembra una soluzione che potrebbe decisamente alleviare il pericolo che affrontano gli utenti tenendo i loro token su exchange centralizzati. Nonostante questo, però, exchange decentralizzati, se dovessero venir sviluppati adeguatamente (un annuncio interessante a riguardo è EOSfinex), sarebbero comunque preferibili.
Plasma è una idea nuova ed interessante che potrebbe aiutare Ethereum a risolvere i propri problemi di scalabilità prima dell’arrivo di una potenziale DAPP mainstream. O anche soltanto un’altro cryptokitties.

Per dare idea dell’importanza di questo annuncio basta informarsi a riguardo del protocollo da cui deriva Plasma Cash: Plasma. Durante i primi test, infatti, Plasma network ha consentito una stima di transazioni al secondo di circa 5 mila transazioni al secondo. Per consentire un confronto basti pensare che attualmente la blockchain Ethereum consente circa 30 transazioni al secondo, quella del bitcoin non arriva bene nemmeno a 10. Il servizio centralizzato di VISA, VISAnet, invece è stato testato oltre le 56 mila transazioni al secondo.
Ma blockchain come EOS stanno lavorando anche a tecnologie capaci di sfidare anche VISA stessa.

Insomma, nonostante gli ultimi movimenti del mercato potrebbero spingere a credere l’opposto, questo settore continua a fare sempre più rapidi ed importanti progressi.