Indice dei contenuti:
Che cos’è Mimblewimble?
L’idea è stata intorno per decenni, anche se il nome e la sua applicazione alle criptovalute sono recenti. Mimblewimble utilizza una forma di crittografia a curva ellittica che richiede chiavi più piccole rispetto ad altri tipi di crittografia. In una rete che utilizza il protocollo Mimblewimble, non ci sono indirizzi sulla blockchain e l’archiviazione dei dati della rete è altamente efficiente. Mimblewimble richiede solo circa il 10% tanto archiviazione dei dati come la rete Bitcoin. Questo rende Mimblewimble altamente scalabile per l’archiviazione della blockchain, significativamente più veloce e meno centralizzato. Inoltre, la natura del protocollo consente transazioni private che sono altamente anonime (maggiori informazioni su questo più tardi).
La nascita di Mimblewimble
I fan di Harry Potter gioiscono! Un altro riferimento si è fatto strada dal mondo immaginario della magia a quello in cui viviamo. Il mimblewimble Whitepaper è stato pubblicato per la prima volta nel luglio 2016 sul canale di ricerca Bitcoin sotto lo pseudonimo di ‘Tom Elvis Judisor’ – il nome francese per l’uomo che è diventato la nemesi di Harry Potter, Voldemort. Poco dopo la pubblicazione del whitepaper, verso la fine del 2016, un altro autore anonimo che utilizzava lo pseudonimo di ‘Ignotus Peverell’ (il proprietario originale del mantello dell’invisibilità dell’universo di Harry Potter) ha avviato un progetto Github utilizzando il protocollo Mimblewimble. Questo progetto si chiama Grin, che ha rilasciato il suo Mainnet il 15 gennaio 2019. Mimblewimble è stato implementato anche su un’altra applicazione appena introdotta chiamata. Copriremo sia Grin che Beam più avanti in questo articolo.
Come funziona Mimblewimble?
Per capire Mimblewimble, è necessario prima capire il modello UTXO (output di transazione non spese) di Bitcoin. Se si paga con fiat, una transazione andrebbe come segue:
Se Alice dà a Bob 1 USD Alice: -1 USD Bob: 1 USD Non è lo stesso nella rete Bitcoin. Le transazioni BTC sono costituite da diversi input e uscite che vanno dal mittente al destinatario. Se hai controllato le tue recenti transazioni Bitcoin, probabilmente hai visto sia ingressi che uscite dal tuo account sulla blockchain. Bitcoin funziona come segue:
Alice vuole inviare 1 BTC a Bob. Invece di dedurre solo un Bitcoin dal portafoglio di Alice, la rete raggruppa più input dalle precedenti transazioni BTC che sono state inviate ad Alice per bilanciare quella moneta che Alice invia a Bob. Pertanto, questa transazione Bitcoin potrebbe assomigliare a questo: Alice: – (0,1, 0,25, 0,35, 0,3) BTC, dove A Bob: + 1 BTC In questo esempio, il BTC 1 di Alice era costituito da quattro input. Ma ci sono casi nella rete Bitcoin quando una transazione ha centinaia di ingressi. Inoltre, se la somma degli input è maggiore dell’importo della transazione, il trasferimento creerà un output aggiuntivo. In questo modo, il primo output includerà l’importo esatto che andrà al destinatario, e il resto verrà restituito al mittente. Poiché ogni transazione deve essere firmata individualmente da un software portafoglio, la rete deve elaborare tonnellate di dati. Questo processo è altamente inefficiente.
Transazioni riservate
È qui che Mimblewimble inizia davvero a brillare. Come accennato in precedenza, il protocollo utilizza un sistema molto più efficiente che elimina la necessità di ingressi e uscite. Il modello UTXO è sostituito da un modello multi-firma per tutti gli ingressi e gli output. Queste sono chiamate Transazioni riservate. Se Alice desidera inviare una moneta a Bob, sia Alice che Bob creano una chiave con firma multi-firma utilizzata per verificare la transazione. Le transazioni riservate utilizzano lo schema Impegno Pedersen, il che significa che non sono necessari indirizzi. Al contrario, le parti condividono un “fattore di accecante”. Il fattore accecante crittografa gli input e gli output della transazione, insieme alle chiavi pubbliche e private di entrambe le parti. Questo fattore accecante è condiviso segretamente tra le due parti impegnate nella transazione. A causa del fattore accecante che sostituisce gli indirizzi, solo le due parti di una transazione sanno di essere state coinvolte in tale transazione. Questo mantiene la privacy della rete estremamente alta. Il programma Pedersen Commitment funziona come segue:
I nodi completi detraggono gli importi crittografati sia dagli ingressi che dalle uscite, creando un’equazione equilibrata che dimostra che nessuna moneta è stata prodotta dal nulla. Il nodo non conosce l’importo effettivo della transazione in qualsiasi momento durante il processo. L’unica verifica necessaria per il protocollo Mimblewimble è verificare che non siano state create nuove monete e che le parti che partecipano alla transazione abbiano la proprietà delle loro chiavi. Entrambi i processi di verifica utilizzano il fattore di accecante per mantenere privato il valore della transazione. Ecco un esempio del processo: 5/5/10 x 5-10
Il semplice esempio di cui sopra mostra che non sono state create nuove monete, che indicano che il saldo netto è pari a zero. 5(10) – 5(10) – 10(10)
Un numero segreto (10) – il fattore accecante – viene aggiunto a questo calcolo e viene moltiplicato per tutte le variabili. Viene utilizzato per oscurare i valori originali. 50/50/100
In questa equazione, sia il fattore accecante – che era 10 nella seconda equazione – sia i valori rimangono privati, consentendo comunque ad altri di verificare che non siano state create nuove monete nella transazione. Con Mimblewimble, il fattore accecante è una combinazione delle chiavi pubbliche e private. In questo modo, oltre a dimostrare che non sono state create nuove monete, le parti possono dimostrare di essere i proprietari delle loro chiavi. Alle parti della transazione viene entrambe data un’intestazione con più firme alla fine della transazione. Questa intestazione multisig è costituita da tutti gli input e gli output che sono stati uniti durante la transazione.
Cut-Through
Quando si tratta di scalabilità, la caratteristica più importante del protocollo Mimblewimble è ‘Cut Through’. Un singolo blocco è costituito da centinaia di transazioni e un sacco di informazioni che devono essere memorizzate sulla blockchain. Tuttavia, questi blocchi possono essere compressi con la funzione Cut Through di Mimblewimble in quanto gran parte delle informazioni può essere rimossa dai blocchi senza rischiare la sicurezza della blockchain. Ecco un semplice esempio:
- Alice invia 1 BTC a Bob.
- Bob manda 1 BTC a Charles.
In questo caso, un blocco tipico ha due UTXO. Il primo UTXO terrà l’ingresso per 1 BTC e riflette come è arrivato ad Alice. L’output per il primo UTXO è il risultato della transazione, che verifica che il Bitcoin è ora di proprietà di Bob. Il secondo UTXO è costituito dall’output del primo UTXO – che ora è l’input del secondo UTXO – e dall’output della seconda transazione a Charles. Mimblewimble elimina l’output della prima transazione e l’input della seconda transazione. Ciò significa che c’è solo un input e un output necessario per verificare come Alice ha ottenuto il suo 1 Bitcoin e come Charles ha ricevuto il suo. Questo comprime le dimensioni della blockchain, rendendo Mimblewimble molto più leggero in termini di archiviazione dei dati richiesti.
Grin & Beam vs. Zcash & Monero
A partire da gennaio 2019, due monete resistenti all’ASIC hanno implementato il protocollo Mimblewimble. Grin è in fase di sviluppo dalla fine del 2016. Il Mainnet è stato lanciato il 15 gennaio 2019. Beam ha già un Mainnet funzionante. Mentre le due monete utilizzano lo stesso protocollo – Mimblewimble – ci sono anche grandi differenze tra di loro. Beam ha una struttura aziendale. L’azienda ha raccolto fondi VC e assunto un team di sviluppo. Questo li ha aiutati a vincere la gara di sviluppo contro Grin. La fondazione di Beam si basa sulla percentuale di premi di blocco che riceve per sostenere lo sviluppo della sua rete. Si sposterà dalla sua attuale struttura societaria a una vera e propria fondazione senza scopo di lucro nel 2019, mentre l’azienda si sposterà per costruire casi d’uso aziendali in cima alla valuta Beam. Dall’altra parte della medaglia, Grin ha una struttura di governance allineata con l’ideologia cyberpunk che mira a potenziare il decentramento guidato dalla comunità. Non c’è ICO o token pre-mining, e gli sviluppatori sono tutti volontari. Le due monete differiscono in usabilità e il loro pubblico pure. Beam ha una posizione più “professionale” per quanto riguarda i casi d’uso della criptovaluta. Il loro team di sviluppo ha costruito una semplice interfaccia e-wallet che ha lo scopo di essere user-friendly e implementabile su diversi sistemi operativi (tra cui Mac, Windows e Linux). In questo modo, l’appassionato di cripto ordinario può accedere alla blockchain Beam. Grin, d’altra parte, non è così user-friendly. La moneta funziona solo con un portafoglio da riga di comando, che è accessibile principalmente agli utenti più esperti di tecnologia. Grin utilizza il linguaggio di programmazione ‘Rust’, mentre Beam è stato codificato in C. Questa non è una differenza significativa tra le due valute. Lo stesso non si può dire dei modelli economici che impiegano. L’obiettivo di Beam è quello di essere utilizzato come un archivio anonimo di valore, dove gli sviluppatori Grin sostengono che la loro moneta dovrebbe essere utilizzata come una “valuta” invece di un archivio di valore. I sostenitori del Grin non vogliono “premiare ingiustamente” i primi utenti; mirano invece ad aumentare l’adozione. Quando si tratta di data mining, entrambe le valute utilizzano le versioni modificate dell’algoritmo Equihash. Mentre entrambe le monete sono resistenti all’ASIC, i loro obiettivi sono diversi. Grin cerca di implementare completamente la loro versione di Equihash (Cuckoo Cycle) entro due anni. Beam vuole utilizzare un algoritmo minerario resistente all’ASIC per 12 mesi per dare ai minatori gpU un vantaggio. Ora, vediamo come queste due monete si confrontano con le tre monete privacy più popolari: .consh, Monero, e Dash. Secondo i critici, le firme degli anelli di zk-SNARK sono troppo intensive dal punto di vista computazionale, il che si traduce in transazioni lente e costose (rispetto a Beam e Grin). Monero utilizza i “mixins” per mantenere private le transazioni. Secondo un analista, il 64% di tutti gli input non contiene mixin, il che significa che tali transazioni non sono in realtà private. Altri ricercatori hanno sostenuto che fino a 80% delle transazioni Monero potrebbe essere rintracciato. Dash è considerato il più centralizzato di tutte le monete privacy. Questa centralizzazione rende una criptovaluta meno privata. Mentre Dash ha vantaggi in termini di scalabilità, le persone che desiderano rimanere completamente anonimo saranno probabilmente scoraggiati dall’utilizzare la moneta a causa della sua maggiore centralizzazione.
Conclusione
Mentre Monero e la cconesh sono popolari monete privacy che sono ampiamente utilizzati nella comunità crypto, le loro reti potrebbero sicuramente essere migliorate implementando nuove tecnologie come Mimblewimble. Se i creatori di monete più tradizionali (che possono includere valute non anonime, come Bitcoin) si muovono più nella direzione di Grin e Beam, le criptovalute possono diventare di nuovo private e anonime.