La sfida della privacy
Per definizione, una blockchain è un registro digitale decentralizzato, immutabile e trasparente che è accessibile e visibile a chiunque in tutto il mondo. È “pubblica” perché qualsiasi individuo o entità può partecipare alla rete, ispezionare le transazioni registrate e contribuire al processo di verifica e convalida delle transazioni.
Rimanere nell’anonimato e preservare la propria privacy quando si utilizza una blockchain è quindi una vera e propria sfida. Su Cardano però c’è una soluzione: Encoins.
Che cos’è Encoins?
Encoins è un protocollo open source che permette di inviare, ricevere e conservare ADA e assent nativi come token o NFT in modo completamente privato. Attraverso il protocollo infatti è possibile nascondere l’ammontare, il mittente e il destinatario della transazione grazie all’utilizzo delle encrypted coins e il metodo Zero Knowledge Proofs.
Nascondere l’importo di una transazione
Per effettuare una transazione di questo tipo bisogna coniare una moneta cifrata chiamata EnCoin, contentente informazioni private sul valore della transazione note solo al proprietario.
Un EnCoin è di fatto un NFT: la policy ID è sempre la stessa ma il nome è unico per ogni moneta.
Coniare un EnCoin è molto semplice: basta inviare degli ADA allo smart contract del protocollo utilizzando il Minting Portal.
Ad esempio: il portafoglio A invia 1000 ADA allo smart contract e in cambio gli vengono restituiti 3 EnCoins insieme alle loro chiavi che dovranno essere utilizzate in seguito per riscattare gli ADA despositati.
Ogni EnCoin coniato ha un valore ignoto: solo il proprietario ha l’accesso a questa informazione.
Ovviamente la somma del valore di ogni EnCoin è uguale all’ammontare di partenza.
Inoltre, per far funzionare il tutto, è possibile anche creare monete dal valore di 0 ADA.
Ipotizziamo che gli EnCoins creati abbiano quindi questo valore: 650 ADA, 350 ADA e 0 ADA.
Se quindi adesso uno di questi token viene inviato al portafoglio B, la quantità di ADA inviata rimane sconosciuta agli occhi della blockchain.
Ipotizziamo che il portafoglio A debba infatti inviare 350 ADA al portafoglio B: l’EnCoin con quel preciso valore può essere trasferito dal portafoglio A al portafoglio B e gli ADA contenuti all’interno dello smart contract possono essere riscattati utilizzando la chiave legata all’EnCoin corrispondente, che verrà burnato.
Per non rivelare tuttavia l’esatto ammontare della transazione, oltre agli ADA il destinatario dovrà coniare EnCoins addizionali: in questo modo un Tracker non potrà mai sapere qual è il vero ammontare della transazione originale.
Durante tutto il processo quindi vediamo che gli importi delle transazioni rimangono privati.
Oltre all’ammontare della transazione è possibile anche nascondere l’indirizzo del mittente o del destinatario affidandosi all’Encoins Ledger.
Nascondere l’indirizzo associato ad una transazione
Gli indirizzi associati ai trasferimenti di Encoins sono comunque tracciati. Per questo motivo è stato pensato l’Encoins Ledger, un sotto-registro privato per spostare le monete criptate in anonimato.
Affinchè il sistema funzioni l’Encoins Ledger si serve dei cosiddetti Relayers, dei server indipendenti all’interno di un network decentralizzato che possono mintare e burnare gli EnCoins su richiesta degli utenti che forniscono una Zero Knowledge Proof (ZKP).
Facciamo un esempio: il portafoglio A ha un’EnCoin nel Ledger e la vuole inviare una al portafoglio B.
Per fare ciò, il portafoglio A deve inviare off-chain – attraverso un canale sicuro – la minting key al portafoglio B. A questo punto, B manda la ZKP al relayer chiedendo di ri-coniare l’EnCoin corrispondente, che avrà quindi una nuova chiave sconosciuta ad A: il possesso della moneta criptata e degli ADA legati ad essa è passato da A a B ma ad un tracker della blockchain sembrerà soltanto che qualcuno abbia mintato una nuova EnCoin.
Soltanto quando un’EnCoin viene ritirata dal Ledger sarà noto l’indirizzo del destinatario, mentre l’indirizzo del mittente sarà l’EnCoins Ledger Relayer.
ENCS
Il token del protocollo è ENCS e servirà sia come utility token che governance. La supply totale è di 15 milioni di ENCS, di cui circa l’82% è già in circolazione. La distribuzione iniziale è stata la seguente:
- 10 000 000 ENCS sono stati messi a disposizione della ISPO.
- 3 000 000 ENCS per la tesoreria.
- 2 000 000 ENCS per il team.
Il token ENCS sarà il cardine fondamentale su cui si fonderanno i Relayers: proprio come una vera e propria stake pool infatti, ogni Relayer dovrà avere in stake almeno 100000 ENCS per poter iniziare a validare transazioni sull’Encoins Ledger e generare ricompense.
Ad oggi 9 settembre 2023 il prezzo di un singolo ENCS è 1.84 ADA:
Roadmap
Il protocollo Encoins è attualmente in testnet e il team sta procedendo con i lavori per lanciare la mainnet entro il Q4 di quest’anno. A breve verranno inoltre pubblicati i risultati dell’audit. Dopodichè i futuri aggiornamenti riguarderanno l’intergrazione del protocollo con le dApp e i wallet di Cardano e l’implementazione del supporto di altri asset oltre ADA come token nativi e NFTs.
Ottimo riassunto, grazie mille!