Binance, il più grande exchange di criptovalute al mondo, ha pubblicato il suo rapporto sulle riserve per agosto 2023, dimostrando che il suo coefficiente di riserva per tutte le principali partecipazioni in criptovalute è ben superiore al 100%.
La divulgazione fa parte dell'impegno costante di Binance nel mantenere il suo sistema Proof of Reserves (PoR), fornendo la prova che dispone di fondi sufficienti per coprire tutti i depositi dei clienti. Il rapporto si basa su un audit dell'altezza del blocco BTC 801130 (aggiornato ai dati aggregati al 1° agosto 2023).
Proof of Reserves (PoR) è un protocollo trasparente utilizzato per confermare la solvibilità degli scambi di criptovaluta. Il suo ruolo è dimostrare che l'exchange dispone di fondi sufficienti per coprire il patrimonio dell'utente in un rapporto 1:1. In sostanza, quando un utente deposita Bitcoin, le riserve di Binance vengono aumentate di almeno un Bitcoin, garantendo che tutti i fondi dei clienti siano completamente coperti. Queste cifre non includono le partecipazioni societarie di Binance, che sono indipendenti.
Il rapporto PoR di Binance mostra che le riserve dell'exchange sono significativamente superiori ai saldi netti dei clienti di tutte le criptovalute segnalate, inclusi Bitcoin, Ethereum, Binance Coin, Tether, BUSD e USDC, con un tasso di riserva che va dal 101,62% al 117,99%. Ciò indica che la società dispone di riserve sufficienti per soddisfare tutti i potenziali prelievi dei clienti.
PoR mira ad aumentare la trasparenza, la sicurezza e la protezione degli utenti nell'ecosistema delle criptovalute. Pertanto, impedisce agli scambi di utilizzare in modo improprio i fondi degli utenti e promuove la fiducia tra gli utenti. In questo modo, gli utenti di Binance possono verificare autonomamente se i loro conti sono stati inclusi nell'ultima verifica PoR, sottolineando ulteriormente l'impegno dell'exchange nei confronti della trasparenza e della fiducia degli utenti.
Come funziona la Proof of Reserve (PoR) con gli alberi Merkle
Per garantire che tutte le risorse degli utenti siano mantenute in un rapporto 1:1, Binance ha implementato un sistema che utilizza gli alberi Merkle. Merkle tree è uno strumento crittografico che aiuta a comprimere grandi quantità di dati in un singolo valore hash, chiamato Merkle root. Questa radice funge da "sigillo" crittografico che riassume tutti i dati di input. Inoltre, gli alberi Merkle consentono agli utenti di verificare contenuti specifici contenuti all'interno di uno specifico insieme di dati sigillati.
Nel contesto del PoR, Binance utilizza le proprietà di Merkle Trees per verificare che i singoli account utente siano inclusi nei rapporti di responsabilità controllati dai revisori. Ogni utente può verificare i propri asset utilizzando il proprio ID hash/record Merkle generato in modo univoco.
Ecco una ripartizione passo passo del processo:
Verifica la proprietà dell'indirizzo: Binance verifica innanzitutto che la proprietà dei portafogli (cold e hot wallet) utilizzati durante il processo PoR appartenga all'exchange.
Istantanea del saldo utente: scatta un'istantanea delle disponibilità di risorse all'interno di ciascun account cliente in una data e un'ora specifiche.
Generazione del Merkle Tree: Binance genera il blocco di dati sottostante collegando l'ID utente con hash e il saldo di ciascun utente. Quindi crea un albero Merkle basato sui dati di tutti gli utenti. Se cambia un ID conto o un saldo in un nodo foglia, cambierà anche la radice Merkle. In questo modo ogni utente può verificare se i propri asset sono inclusi nei nodi foglia.
zk-SNARK durante la verifica
Oltre agli alberi Merkle, Binance utilizza anche zk-SNARK (Zero-Knowledge Succinct Non-Interactive Argument of Knowledge) nel processo di verifica. zk-SNARK è un protocollo di prova che consente alle persone di dimostrare di conoscere un valore senza rivelare quale sia quel valore.
Prendendo Binance come esempio, l'exchange utilizza zk-SNARK per dimostrare che l'insieme dei saldi di tutti i nodi foglia (ovvero i saldi degli account utente) contribuisce al saldo totale delle risorse dell'utente richiesto dall'exchange. Ogni utente può accedere facilmente al proprio nodo foglia per vedere se è incluso nel processo.
L'utilizzo di zk-SNARKs segue i seguenti passaggi:
Verifica la proprietà dell'indirizzo: come nel processo precedente, Binance verificherà la proprietà dei portafogli (portafogli freddi e caldi) utilizzati nel processo PoR.
Istantanea del saldo utente: anche in questo caso, scatta un'istantanea delle disponibilità di risorse all'interno di ciascun account cliente.
Genera certificati zk-SNARKs: genera file di certificati zk-SNARKs per ciascun utente. Ciò consente a ciascun utente di accedere facilmente ai propri nodi foglia e verificare che il saldo netto totale dell'utente sia maggiore o uguale a zero.
Oltre a questi metodi di autoverifica, Binance utilizza anche audit di terze parti per fornire report di audit, migliorando ulteriormente la sicurezza e la trasparenza del processo di verifica.