sabato 10 settembre 2022

Il Funzionamento Di Mina Protocol: La Blockchain Più leggera

La blockchain di Mina Protocol ha un particolare primato: essere la blockchain più leggera. Infatti pesa solo 22 kB (kilobyte). Per rendere l'idea, la blockchain di Bitcoin, per sincronizzarsi (avendo un full node) ha un peso di oltre 460 GB (gigabyte). A giugno 2012, quando il network Bitcoin era ancora poco utilizzato pesava già più di 1 gigabyte. Il fatto che Mina pesi così poco rende alla portata di tutti il full node e non è necessario quindi spazio di archiviazione o grandi velocità della connessione internet. Inoltre è possibile scaricarla anche su smartphone. Si tratta di un proof of stake con delegazione (simile ad Ouroboros di Cardano ma modificato con un numero illimitato di block producers). La blockchain pesa così poco, grazie all'uso di zk proofs (in particolare zk-SNARKS), questo porta ovviamente ad un'enorme decentralizzazione (perchè come detto non sono richieste caratteristiche hardware particolari). Zk proofs (zero knowledge) sono dei certificati di validità per transazioni e blocchi: sostanzialmente è come se la blockchain scattasse delle foto (o screenshot) che dimostrino l'esistenza di quegli oggetti (transazioni in questo caso). Ovviamente tutto questo ha bisogno di una prova di validità. Tutte queste zk proofs sono anche ricorsive: ovvero ogni certificato di autenticità ha a sua volta un altro certificato (cioè un po' come se fotografassi un oggetto per dimostrare che lo posseggo e poi alla foto, scattassi un'altra foto). Di base esistono:

-Snark producers: eseguono snapshot (snark) delle transazioni e le mandano ai block producers (ovviamente sono incentivati a farlo perchè vengono pagati mediante un sistema ad asta a ribasso: il block producer sceglierà chi offre di meno quindi tendenzialmente gli snark producers tenderanno ad abbassare il prezzo)
-Block producers: sono i validatori quindi creano blocchi con le transazioni e mandano gli snapshot ai verifiers (è uno snapshot di uno snapshot). In realtà questi validatori possono produrre snarks anche da sè, senza acquistarli dai snark producers. Gli incentivi che ricevono per fare ciò derivano dalle rewards di staking. In questo caso i requisiti sono molto elevati (bisogna avere tanti Mina) e un client di circa 100 MB. Ad oggi ci sono circa 240 validatori
-Verifiers: verificano gli snapshot che gli arrivano dai block producers ed aggiungono la transazione al blocco, se non è malevola


IL PROBLEMA SCALABILITA' E SICUREZZA
Uno dei problemi di quest'architettura è la scalabilità: la blockchain supporta 25-30 TPS, a causa della complessità nel produrre le zk proofs. Una transazione viene finalizzata dopo 15 conferme. Ogni conferma avviene dopo qualche minuto quindi la finalizzazione della transazione è di circa 1 ora (simile a Bitcoin). Un altro eventuale problema potrebbe essere la sicurezza qualora la blockchain crashasse, in questo caso bisognerebbe accedere all'archive node (perchè come si diceva in precedenza, questa blockchain è leggera perchè mostra snapshot di informazioni, senza mostrarli direttamente). L'archive node sono locati su data center e contengono tutte le transazioni reali e non gli snapshot. In poche parole, la chain è come se possedesse una "copia" di sè stessa, utile a recuperare i dati, qualora ci fosse la necessità.


SNAPPS: LE DAPPS SU MINA, SENZA SMART CONTRACT
Questa tecnologia comunque, oltre a snellire e rendere nullo il peso della blockchain, garantisce anche la privacy (permette di dimostrare informazioni, senza mostrarle direttamente. Tutto ovviamente è crittografato).
Tramite questo protocollo (che non supporta gli smart contract) è possibile comunque creare delle snApps, ottenendo dati dal web e dimostrarli on chain. Ovvero prendere dei dati online e portarli onchain, tramite sk (senza mostrarli direttamente ma avendo la prova di possederli). Uno dei casi d'uso sono applicazioni basate sulla privacy, ovvero implementazione di identità digitali (dati di login) che garantirebbero un buon livello di privacy, sistemi di votazione (proteggendo le scelte dei votanti) e qualsiasi sistema finanziario che gestisce dati sensibili.

Nessun commento:

Posta un commento