Monero è una criptovaluta progettata per la privacy, che promette “tutti i vantaggi di una criptovaluta decentralizzata, senza alcuna delle tipiche concessioni sulla privacy”.
È dove il mercato del Dark Web AlphaBay, al momento il sito più popolare nel suo genere, ha guardato nel 2016 quando voleva adottare una criptovaluta che offrisse agli utenti una protezione maggiore rispetto a Bitcoin.
È anche dove gli autori di WannaCry, il famigerato ransomware divenuto globale nel maggio 2017, si sono rivolti quando volevano trasformare i loro riscatti illeciti in qualcosa di più difficile da rintracciare.
Ma la ricerca recentemente aggiornata sulla tracciabilità nella blockchain di Monero suggerisce che le protezioni della privacy della valuta possono essere indebolite e in molti casi smantellate completamente, lasciando gli utenti esposti.
I ricercatori descrivono un paio di attacchi, uno che ha funzionato sulle transazioni fino all’inizio del 2017 e uno che funziona ancora oggi.
In questo articolo esamineremo il primo di questi attacchi, ma inizieremo osservando come Monero cerca di evitare le insidie di Bitcoin.
Esporre gli utenti di Bitcoin
Bitcoin e Monero sono entrambe criptovalute che si basano su una blockchain, un registro di transazioni decentralizzato e protetto crittograficamente.
La solidità di ciascuno dipende, in parte, dalla trasparenza: esistono migliaia di copie di entrambe le blockchain Bitcoin e Monero e ciascuna di esse dettaglia attentamente tutte le singole transazioni effettuate in quella valuta.
Cambiare la storia racchiusa in queste blockchain è di fatto impossibile. Se avete mai speso un bitcoin o un monero, la prova che è successo è incisa in modo indelebile nella blockchain di quella valuta, per sempre.
Nella blockchain di Bitcoin ogni transazione punta a una transazione precedente, rendendo possibile vedere cosa ha speso e ricevuto un determinato portafoglio Bitcoin (e per estensione, qualsiasi proprietario di portafoglio Bitcoin).
La privacy degli utenti di Bitcoin è protetta da uno o più nomi falsi, vale a dire gli indirizzi dei loro portafogli.
Gli utenti di Bitcoin possono essere esposti se una qualsiasi delle transazioni di un portafoglio può essere collegata a una vera identità.
Se un utente di Bitcoin paga qualcosa in un mercato online che richiede informazioni personali, come un indirizzo di consegna, allora una singola transazione crea un collegamento tra l’identità reale dell’utente e ogni altra transazione che ha fatto con quel portafoglio Bitcoin.
Un collegamento simile viene creato se un utente Bitcoin accede a uno scambio online che richiede un ID per aprire un account.
Anche i nomi utente possono essere utilizzati per smascherare gli utenti Bitcoin se vengono riutilizzati, ad esempio, in un sito Dark Web dove sono stati spesi bitcoin e un sito pubblico come Reddit o GitHub che richiede un login.
Monero tenta di rendere gli utenti completamente anonimi oscurando i collegamenti tra le transazioni. Lo smascheramento della persona dietro una singola transazione non rivela anche le sue altre transazioni.
Lo fa usando monete esca, conosciute come mixin
Mentre la traccia cartacea Bitcoin identifica chiaramente la moneta spesa in ogni transazione, Monero identifica un numero di monete in ogni transazione, una reale e almeno quattro mixin.
Chiunque tenti di ricostruire la cronologia delle transazioni di un utente dalla blockchain Monero si troverà a correre in vicoli ciechi.
Tuttavia, se un attaccante può trovare un modo per distinguere le monete reali dalle esche, gli utenti Monero non sono più bravi degli utenti Bitcoin e altrettanto vulnerabili alle tattiche utilizzate per individuarli.
E questo è esattamente ciò che i ricercatori hanno fatto.
Individuare gli utenti Monero
Proprio come qualsiasi software, le criptovalute possono adattarsi e cambiare nel tempo. Tuttavia, mentre le regole che governano le transazioni possono evolversi, le vecchie transazioni fatte in base a regole più vecchie (comprese le regole che i loro scrittori potrebbero arrivare a rimpiangere) non possono essere cancellate.
C’è una tassa per aggiungere mixin a una transazione e fino a un paio d’anni fa l’aggiunta non era obbligatoria.
Questo ha fatto sì che gli utenti che non fossero particolarmente incentivati a proteggere la propria privacy su Monero.
Per questo motivo, al momento in cui è stata condotta la ricerca, circa due terzi delle transazioni nella blockchain Monero erano state effettuate senza alcun mixin. Queste transazioni possono essere collegate alle transazioni precedenti allo stesso modo delle transazioni Bitcoin.
Le transazioni 0-mixin non solo non forniscono alcuna privacy agli utenti che le hanno create, ma presentano anche un rischio per la privacy se altri utenti includono le uscite spese come mixin in altre transazioni. Quando il cliente Monero sceglie i mixin, non tiene conto se i potenziali mixin sono già stati spesi.
In altre parole, il potenziale insieme di esche include monete che un utente malintenzionato può dimostrare essere state spese altrove.
Data la loro prevalenza, queste transazioni zero-mixin sono in realtà molto probabilmente utilizzate come mixin in altre transazioni.
Quindi, i ricercatori ha iniziato a rimuovere tutte le esche che avrebbero potuto dimostrare fossero già state spese, eliminando il mascheramento da un numero di transazioni precedentemente oscurate.
Una volta eliminate le esche, queste operazioni non erano solo in modo dimostrabile collegate a transazioni precedenti, ma non erano più utili neanche come mixin, ed esponevano un altro livello di transazioni, che ne esponeva un altro, che ne esponeva un altro ancora e così via.
Secondo i ricercatori, questa ricorrente “analisi della reazione a catena” può essere utilizzata per rimuovere tutte le esche dai due terzi delle transazioni che le hanno utilizzate, prima del 2017.
Due modifiche, l’ultima all’inizio del 2017, impediscono questo tipo di attacco a transazioni più recenti.
Da gennaio 2016 tutte le nuove transazioni Monero hanno richiesto un minimo di due mixin. Ciò è stato seguito un anno dopo da una severa svolta che ha introdotto un nuovo tipo di transazione denominata RingCT che può contenere solo altre transazioni RingCT come mixin.
Dal momento che tutte le transazioni RingCT esistono dopo che è stato introdotto il minimo di due mixin, esse formano un pool separato di transazioni senza un punto d’appoggio zero-mixin.
Senza quel punto d’appoggio, l’analisi della reazione a catena non funziona.
Questa è una buona notizia per le persone che sono nuove a Monero, ma una magra consolazione per chiunque lo abbia usato per le sue caratteristiche di anonimizzazione prima del 10 gennaio 2017, come gli acquirenti su AlphaBay:
Gli utenti che hanno effettuato transazioni sensibili alla privacy prima di febbraio 2017 sono a rischio significativo di de-anonimizzazione.
La ricerca dimostra che la trasparenza e l’immutabilità che rendono affidabili le blockchain possono anche lasciare gli utenti vulnerabili ad un’azione retrospettiva.
Le transazioni al loro interno sono artefatti congelati nel tempo secondo regole che erano considerate abbastanza buone o abbastanza forti al momento.
Immuni alla correzione, le loro protezioni devono sopravvivere ai cicli della Legge di Moore e ai progressi di tecnologia, tecniche e ricerca.
*Tratto dall’articolo “Unmasking Monero: stripping the currency’s privacy protection” di Mark Stockley