Dimostrare senza rivelare, dentro il perimetro antiriciclaggio europeo

Prove a conoscenza zero: come funzionano, quali applicazioni sono già in uso e come si collocano rispetto agli obblighi antiriciclaggio europei.

encrypted data padlock
A typical Enigma intercept from the Bletchley Park operation in England. These messages were transmitted in Morse code as groups of five letters, which were easily intercepted — but were impossible to understand without sophisticated decryption. (Photo courtesy Dr. David Hamer)

Un utente vuole dimostrare di avere più di diciotto anni senza mostrare la propria data di nascita. Un altro vuole dimostrare di possedere fondi sufficienti per un’operazione senza rivelare il saldo esatto del proprio conto. Un terzo vuole dimostrare che una transazione rispetta le regole del protocollo senza rivelare né il mittente né il destinatario né l’importo. Tre problemi diversi, risolti dalla stessa famiglia di strumenti crittografici.

Le prove a conoscenza zero permettono esattamente questo: dimostrare che un’affermazione è vera senza rivelare nient’altro oltre al fatto che è vera. Non sono una novità recente in senso assoluto, la teoria matematica che le descrive risale a decenni fa, ma la loro applicazione pratica su larga scala nei registri distribuiti è un fenomeno degli ultimi anni, reso possibile da progressi nell’efficienza computazionale che prima rendevano questi calcoli troppo lenti per un uso quotidiano.

Questo testo spiega come funziona il meccanismo alla base di queste prove, quali applicazioni sono oggi effettivamente in uso e non solo teorizzate, e come si collocano rispetto al quadro antiriciclaggio europeo, che impone obblighi di verifica dell’identità difficilmente conciliabili, a prima vista, con un sistema pensato per non rivelare informazioni.

I punti chiave, in breve

  • Non nascondono la verifica, la separano dall’informazione. Chi verifica sa che l’affermazione è vera, non sa perché lo sia nel dettaglio.
  • Sono già in uso, non solo in teoria. Alcune reti le impiegano per la riservatezza delle transazioni, altre per comprimere i dati di verifica.
  • Non sono automaticamente incompatibili con l’antiriciclaggio. Alcuni schemi permettono di dimostrare la conformità senza rivelare i dati sottostanti.
  • Il costo computazionale è ancora rilevante. Generare una prova richiede più risorse che verificarla.
  • La supervisione resta un problema aperto. Un’autorità che debba indagare un caso specifico incontra ostacoli diversi rispetto a un registro pienamente trasparente.

Come funzionano le prove a conoscenza zero, in pratica

Lavagna coperta da formule matematiche scritte con il gesso bianco

Il principio di fondo si può illustrare senza formule: una parte, chiamata dimostratore, vuole convincere un’altra parte, chiamata verificatore, che conosce un’informazione o che una certa condizione è vera, senza rivelare l’informazione stessa. Il verificatore, alla fine del processo, deve avere la certezza matematica che l’affermazione è vera, pur non avendo appreso nulla di più.

Un esempio spesso usato per intuire il concetto, pur semplificando molto la matematica sottostante, riguarda una caverna con due ingressi collegati da un passaggio segreto conosciuto solo dal dimostratore. Ripetendo più volte una richiesta casuale su quale ingresso usare per uscire, il dimostratore può convincere il verificatore di conoscere il passaggio segreto, senza mai rivelarne la posizione esatta, con una probabilità di inganno che si riduce a ogni ripetizione fino a diventare trascurabile.

Nei sistemi usati realmente sui registri distribuiti, questo schema interattivo viene trasformato in una prova non interattiva, generabile una volta sola e verificabile da chiunque senza bisogno di un dialogo ripetuto, una proprietà indispensabile per un contesto dove migliaia di verificatori indipendenti devono controllare la stessa prova senza comunicare fra loro.

Le due famiglie principali di prove

Il panorama tecnico si divide, in modo semplificato, in due grandi famiglie. La prima richiede una fase di configurazione iniziale eseguita una sola volta, che genera parametri pubblici necessari sia per costruire sia per verificare le prove successive; questa fase, se compromessa, potrebbe indebolire la sicurezza del sistema, il che ha portato allo sviluppo di cerimonie pubbliche multi-partecipante per generare quei parametri in modo distribuito e verificabile.

La seconda famiglia non richiede questa configurazione iniziale, un vantaggio in termini di fiducia richiesta, ma tipicamente produce prove di dimensione maggiore rispetto alla prima famiglia, un compromesso che i team di sviluppo valutano diversamente a seconda delle priorità del progetto specifico, fra fiducia iniziale richiesta e costo di trasmissione delle prove generate.

Nessuna delle due famiglie è in assoluto superiore all’altra: la scelta dipende dal contesto applicativo, dal livello di fiducia che gli utenti sono disposti ad accordare alla fase di configurazione e dai vincoli di banda e di costo di verifica specifici della rete su cui il meccanismo viene implementato.

Le applicazioni già in uso, non solo teorizzate

La prima applicazione ad aver raggiunto un uso reale su larga scala riguarda la riservatezza delle transazioni: alcune reti pubbliche permettono di dimostrare che una transazione è valida, che il mittente possiede i fondi che sta spendendo e che non li sta spendendo due volte, senza rivelare l’importo trasferito né gli indirizzi coinvolti. Progetti come Zcash hanno reso pubblicamente disponibile questa funzionalità fin dai primi anni della loro attività, offrendola come opzione accanto a transazioni trasparenti.

Una seconda applicazione, distinta dalla prima, riguarda la compressione dei dati di verifica per le soluzioni di secondo livello: invece di usare le prove per nascondere informazioni, alcuni protocolli le usano per dimostrare in modo compatto che un gran numero di operazioni eseguite fuori dalla catena principale è stato eseguito correttamente, riducendo drasticamente quanto la catena principale deve verificare direttamente.

Una terza applicazione, più recente e ancora in fase di adozione crescente, riguarda la verifica di identità e di requisiti senza esposizione dei dati sottostanti: dimostrare di superare un controllo di idoneità, o di rientrare in una lista di indirizzi autorizzati, senza rivelare quale specifico requisito si soddisfa o quale documento lo attesta.

Dove si colloca rispetto agli obblighi antiriciclaggio europei

Bandiera dell'Unione Europea che sventola davanti a un edificio istituzionale

Il quadro antiriciclaggio europeo impone ai soggetti obbligati, fra cui i prestatori di servizi su cripto-attività, di identificare i propri clienti e di monitorare le operazioni per individuare comportamenti sospetti. A prima vista, questo obbligo sembra strutturalmente incompatibile con un meccanismo pensato per non rivelare informazioni sulle transazioni.

La distinzione che risolve, almeno in parte, questa apparente contraddizione riguarda il livello a cui si applica la riservatezza. Un prestatore di servizi soggetto agli obblighi antiriciclaggio conosce comunque l’identità del proprio cliente al momento dell’apertura del rapporto, indipendentemente dal fatto che le transazioni successive su una rete pubblica siano o meno riservate a livello di protocollo. La riservatezza della transazione sulla catena non elimina l’obbligo di identificazione già assolto a monte, al momento in cui il cliente interagisce con il prestatore.

Alcuni schemi più avanzati provano ad andare oltre questa distinzione, permettendo di dimostrare crittograficamente che una transazione rispetta determinati vincoli di conformità, per esempio che l’indirizzo coinvolto non compare in una lista di indirizzi sanzionati, senza rivelare quale specifico indirizzo sia coinvolto a chiunque osservi la catena pubblicamente. Questo tipo di approccio, ancora in fase sperimentale su larga scala, rappresenta un tentativo di conciliare privacy tecnica e conformità normativa invece di trattarle come obiettivi necessariamente contrapposti.

Le riserve delle autorità di vigilanza

Le autorità di vigilanza europee hanno espresso, in diverse occasioni pubbliche, preoccupazione per gli strumenti che rendono le transazioni completamente opache a un osservatore esterno, indipendentemente dal fatto che l’identificazione iniziale del cliente sia stata correttamente eseguita da un prestatore di servizi regolamentato. Il timore principale riguarda i fondi che entrano nel circuito riservato attraverso canali che sfuggono agli obblighi di identificazione, per esempio senza passare da alcun prestatore regolamentato.

Questa preoccupazione ha portato alcuni prestatori di servizi regolamentati a limitare o escludere il supporto per le reti che offrono riservatezza integrata a livello di protocollo, una scelta commerciale distinta da un divieto normativo esplicito ma che nella pratica riduce significativamente la liquidità disponibile per chi vuole utilizzare questi strumenti attraverso canali regolamentati.

Questo scenario si intreccia con la discussione più ampia sulla reale anonimità di un registro pubblico, perché la maggior parte delle catene pubbliche non offre alcuna riservatezza di default: sono le prove a conoscenza zero applicate specificamente alla riservatezza delle transazioni a costituire l’eccezione che richiede un’attenzione normativa diversa.

Il confronto con altri strumenti di privacy

Strumento Che cosa nasconde Livello a cui opera
Prove a conoscenza zero applicate alla transazione Importo, mittente, destinatario Protocollo della rete
Servizi di mescolamento dei fondi Collegamento fra indirizzi Applicazione esterna alla rete
Indirizzi generati a ogni transazione Collegamento diretto fra transazioni Pratica dell’utente

La differenza fra questi strumenti non è solo tecnica ma anche di percezione normativa: le prove a conoscenza zero integrate a livello di protocollo sono generalmente considerate una caratteristica dichiarata e verificabile della rete, mentre i servizi di mescolamento esterni sono stati oggetto di azioni di contrasto più dirette da parte delle autorità in diversi casi documentati, proprio per la loro funzione specificamente orientata a interrompere la tracciabilità di fondi di provenienza non verificata.

Il costo computazionale, un limite ancora concreto

Generare una prova a conoscenza zero richiede risorse di calcolo significativamente superiori a quelle necessarie per verificarla, un’asimmetria che è anzi una caratteristica progettuale desiderata, perché permette a un numero elevato di verificatori con risorse limitate di controllare rapidamente una prova che ha richiesto un lavoro computazionale intenso da parte di chi l’ha generata.

Questo costo si traduce in tempi di attesa più lunghi per chi genera la prova rispetto a una transazione trasparente equivalente, un compromesso che gli utenti che scelgono la riservatezza accettano consapevolmente. I miglioramenti nell’efficienza degli algoritmi di generazione, osservati negli ultimi anni, hanno ridotto sensibilmente questo divario rispetto alle prime implementazioni, senza però eliminarlo del tutto.

Anche la dimensione della prova generata incide sul costo complessivo del sistema: una prova più compatta occupa meno spazio sulla catena e costa meno da includere in un blocco, un dettaglio che diventa rilevante quando il volume di transazioni riservate cresce e la capacità della rete resta limitata. Le famiglie di prove che privilegiano dimensioni più contenute pagano spesso questo vantaggio con un tempo di generazione più lungo, ed è uno dei motivi per cui non esiste un’unica soluzione tecnica valida per ogni contesto applicativo.

Chi progetta un sistema che utilizza queste tecniche deve quindi bilanciare tre fattori distinti, il tempo di generazione, la dimensione della prova e il tempo di verifica, scegliendo il compromesso più adatto alla frequenza d’uso prevista e ai vincoli della rete su cui il meccanismo verrà impiegato. Non esiste una configurazione ottimale in assoluto, solo scelte più o meno coerenti con l’obiettivo specifico del progetto.

Come si distingue un progetto serio da uno che usa il termine come etichetta

  1. Verificare se il codice della libreria crittografica è pubblico e sottoposto a revisione indipendente da parte di crittografi esterni al team.
  2. Controllare se la fase di configurazione iniziale, quando prevista, è stata eseguita con una cerimonia pubblica documentata o da un singolo soggetto non verificabile.
  3. Leggere che cosa esattamente la prova dimostra, perché il termine viene talvolta usato genericamente senza specificare quale affermazione venga effettivamente verificata.
  4. Confrontare le prestazioni dichiarate con quelle di implementazioni note e già sottoposte a verifica indipendente nel settore.

Un progetto che descrive con precisione tecnica che cosa la propria prova dimostra, e che rende pubblico il codice sottostante, merita più fiducia di uno che usa il termine come sinonimo generico di sicurezza avanzata senza fornire dettagli verificabili. Chi legge una documentazione tecnica dovrebbe diffidare di affermazioni generiche come protetto da crittografia avanzata quando non sono accompagnate da alcun riferimento a quale schema specifico venga impiegato e a chi ne abbia verificato l’implementazione.

Domande frequenti

Le prove a conoscenza zero rendono una transazione completamente non rintracciabile?

Dipende dall’implementazione specifica. Alcuni schemi nascondono importo e controparti ma lasciano visibile che una transazione è avvenuta su quella catena in un certo momento, un’informazione che in alcuni contesti può comunque essere significativa per un’analisi esterna.

Un prestatore di servizi regolamentato può offrire queste reti ai propri clienti?

Sì, se rispetta comunque gli obblighi di identificazione del cliente al momento dell’apertura del rapporto e di monitoraggio delle operazioni nella misura in cui i dati disponibili lo consentono. Alcuni prestatori scelgono comunque di limitarne il supporto per prudenza commerciale.

Che differenza c’è fra una prova a conoscenza zero e la crittografia usata per proteggere una password?

Sono strumenti diversi con obiettivi diversi. La crittografia tradizionale protegge un’informazione rendendola illeggibile a chi non possiede la chiave; una prova a conoscenza zero dimostra che un’affermazione è vera senza mai rivelare l’informazione sottostante a nessuno, nemmeno a chi verifica la prova.

Queste tecniche richiedono hardware specializzato per essere usate?

Per generare le prove più complesse, un hardware più potente riduce sensibilmente i tempi di attesa, ma non è strettamente indispensabile: molte implementazioni funzionano, seppure più lentamente, anche su dispositivi di uso comune.

Le autorità europee hanno vietato l’uso di queste tecniche?

No, non esiste un divieto generale. Esistono preoccupazioni espresse pubblicamente e scelte commerciali di alcuni prestatori regolamentati di limitarne il supporto, ma la tecnica in sé non è oggetto di un divieto normativo esplicito nel quadro attuale.

Le prove a conoscenza zero non sono, di per sé, uno strumento pensato per eludere gli obblighi antiriciclaggio: sono una tecnica crittografica con applicazioni che vanno ben oltre la sola riservatezza delle transazioni, e il modo in cui si colloca rispetto al quadro normativo dipende più da come viene implementata e da chi la utilizza che dalla tecnica in sé.

Ingegnere del software, lavora su sistemi distribuiti e legge codice prima di leggere i comunicati. Segue da vicino i livelli due, i meccanismi di consenso e gli incidenti tecnici documentati. Spiega come funziona un sistema, non quanto potrebbe valere.
16