01 · Объяснение

Anatomia di una blacklist USDT: come Tether congela i token

Dal 2017 Tether ha inserito in blacklist circa 8.000 indirizzi blockchain che detenevano oltre 4 miliardi di dollari. Analizziamo la meccanica tecnica: come un normale trasferimento diventa un evento AddedBlackList, cosa significa preban → ban, come verificare un indirizzo e dove si trova la finestra di opportunità.

explainerCryptoAlert Research

Tether ha la capacità tecnica di bloccare gli USDT detenuti presso qualsiasi indirizzo blockchain. Dopo un tale blocco, il proprietario dell'indirizzo non può più trasferire USDT, anche se continuano a comparire nel saldo.

Dal 2017 Tether ha avviato l'inserimento in blacklist di circa 8.000 indirizzi blockchain per un valore complessivo di oltre 4 miliardi di dollari.

Rispetto alla scala complessiva della circolazione di USDT, questi numeri possono sembrare piccoli. Ma per un singolo partecipante al mercato, una blacklist diventa un evento critico — soprattutto quando è certo di non aver fatto nulla di illegale. Casi del genere non sono così rari come potrebbe sembrare. Il fatto che alcuni indirizzi vengano successivamente sbloccati conferma che a volte singole decisioni sono state prese sulla base di conclusioni errate dell'iniziatore.

L'inserimento in blacklist non avviene in modo arbitrario — devono esserci dei motivi, e la procedura ha sia un aspetto legale sia uno operativo. Trattiamo questi aspetti in un articolo a parte su chi decide effettivamente. L'obiettivo di questo articolo è spiegare la meccanica tecnica della blacklist USDT.

01Base

Come funziona un normale trasferimento USDT

Per comprendere il processo di blocco, dobbiamo prima capire come avviene tecnicamente un normale trasferimento USDT.

Consideriamo un esempio di transazione USDT sulla rete TRON. L'utente avvia un trasferimento di USDT dal proprio indirizzo all'indirizzo di un destinatario. In quel momento, la transazione interagisce con lo smart contract USDT su TRON:

TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

Lo smart contract è ciò che gestisce la contabilità dei saldi e l'elaborazione dei trasferimenti di token. Quando viene eseguito un trasferimento, viene invocata la logica interna di trasferimento token del contratto. A livello di eventi del contratto, questo viene registrato come evento Transfer — ovvero il movimento di un asset dal mittente al destinatario.

In modo semplificato, il processo si presenta così:

  1. L'utente avvia un trasferimento USDT;
  2. La transazione chiama lo smart contract USDT;
  3. Il contratto verifica le condizioni del trasferimento;
  4. Se non ci sono restrizioni, il saldo del mittente diminuisce e il saldo del destinatario aumenta;
  5. Un evento Transfer viene registrato on-chain.

USDT su Ethereum funziona in modo simile: un trasferimento viene elaborato tramite lo smart contract del token e un trasferimento riuscito viene registrato come evento Transfer. Le principali differenze tra TRON ed Ethereum derivano dall'ambiente tecnico: standard del token, formato dell'indirizzo, commissioni, velocità di elaborazione delle transazioni.

Contratti USDT sulle principali reti
02Controllo

Meccanismi di controllo nello smart contract USDT

Oltre ai normali trasferimenti, lo smart contract USDT dispone di funzioni amministrative che consentono all'emittente di gestire la circolazione del token per indirizzi specifici. L'emittente può aggiungere un indirizzo alla blacklist, rimuoverlo dalla blacklist e distruggere gli USDT detenuti su un indirizzo in blacklist.

Queste azioni si riflettono attraverso gli eventi del contratto. Per l'analisi delle blacklist, tre eventi sono fondamentali:

  • AddedBlackList — aggiunta di un indirizzo alla blacklist;
  • RemovedBlackList — rimozione di un indirizzo dalla blacklist;
  • DestroyedBlackFunds — distruzione di fondi su un indirizzo in blacklist.

In modo semplificato, la logica si presenta così:

  1. Tether aggiunge un indirizzo alla BlackList;
  2. Lo smart contract inizia a riconoscere questo indirizzo come inserito in blacklist;
  3. Quando si tenta un trasferimento in uscita, il contratto verifica lo stato dell'indirizzo;
  4. Se l'indirizzo è nella BlackList, il trasferimento viene rifiutato;
  5. Se l'indirizzo non è nella BlackList, il trasferimento può procedere.
03Blacklist in due fasi

Dal preban al ban: come la blacklist appare on-chain

La blacklist USDT su TRON viene registrata non come una, ma come due fasi on-chain correlate: prima viene creata un'operazione nel MultisigWallet di Tether; poi quell'operazione viene eseguita e determina l'aggiunta dell'indirizzo alla BlackList.

Questa sequenza può essere suddivisa convenzionalmente in due eventi:

  1. Preban — creazione dell'operazione nel MultisigWallet di Tether.
  2. Ban — effettiva esecuzione dell'operazione, dopo la quale l'indirizzo entra nella BlackList.

Preban: creazione dell'operazione nel MultisigWallet di Tether

Nella fase di preban, viene chiamato un metodo sul contratto multisig. In questa transazione, l'indirizzo non è ancora effettivamente in blacklist — viene solo creata un'operazione che il multisig deve eseguire dopo la conferma richiesta.

Parametri chiave di una transazione di preban:

Parametri della transazione di preban in MultisigWallet

Negli event log della transazione di preban vengono registrati gli eventi del contratto multisig. TransactionId è l'identificatore interno dell'operazione nel MultisigWallet di Tether che sarà eseguita in seguito.

Dove è nascosto l'indirizzo da inserire in blacklist

L'indirizzo che sarà inserito in blacklist non viene visualizzato direttamente negli event log della transazione di preban. È nascosto all'interno del parametro Data, che deve essere decodificato secondo le regole ABI di Solidity.

Se l'operazione prepara una chiamata a una funzione di blacklist, la struttura dei dati si presenta così:

0xecb93c0 + 32-byte address argument
(<function selector> + <ABI-encoded arguments>)

I primi 4 byte sono il selettore della funzione. Il resto è l'argomento codificato in ABI. Per estrarre l'indirizzo, si prendono gli ultimi 20 byte dell'argomento e li si decodifica.

In TRON, gli indirizzi possono essere visualizzati in due forme:

  • Formato Hex — inizia con il prefisso 41;
  • Formato Base58Check — leggibile dall'uomo, inizia con T.

Ban: aggiunta effettiva dell'indirizzo alla BlackList

Il blocco effettivo avviene più tardi, quando l'operazione multisig creata viene eseguita. Nella transazione di ban, i log del contratto USDT mostrano:

AddedBlackList(address target)

Questo evento è la conferma on-chain che l'indirizzo è stato aggiunto alla BlackList.

04Finestra di reazione

La finestra di opportunità: il tempo dal preban al ban

Tra il preban e il ban c'è un intervallo di tempo. Prima che compaia l'evento AddedBlackList, l'indirizzo non è ancora nella BlackList e tecnicamente mantiene la capacità di usare gli USDT. Questo intervallo è ciò che chiamiamo la finestra di opportunità.

Giorni
La finestra un tempo
2017–inizio anni 2020: tra preban e ban — fino a diversi giorni
Ore
La finestra ora
Media tipica: da 1 a 24 ore
Minuti
Nei casi coordinati
Negli eventi di blacklist in blocco — da secondi a pochi minuti

La finestra un tempo era di giorni. Ora si è ridotta notevolmente — a volte ore, a volte minuti. Questo riduce la prevedibilità per il proprietario dell'indirizzo e rende critica una risposta rapida.

Prima dell'evento AddedBlackList, l'indirizzo può ancora eseguire trasferimenti USDT in uscita. Quindi, dal punto di vista di un utente in buona fede che vede il rischio di un'imminente blacklist, la sequenza razionale di azioni è: prima spostare i fondi fuori dall'indirizzo potenzialmente bloccato, poi occuparsi dei motivi del blocco.

05Dopo il ban

Cosa succede dopo il ban effettivo

Dopo l'inserimento in blacklist, l'indirizzo non può più inviare USDT. I trasferimenti in uscita vengono rifiutati dalla logica dello smart contract. I fondi continueranno a comparire nel saldo e i trasferimenti in entrata possono tecnicamente arrivare all'indirizzo.

Cosa succede dopo dipende dai motivi dell'inserimento in blacklist:

  • L'indirizzo può rimanere nella BlackList a tempo indeterminato;
  • L'indirizzo può essere sbloccato tramite RemovedBlackList;
  • I fondi possono essere distrutti tramite DestroyedBlackFunds, con possibile riemissione a un nuovo indirizzo.

Dopo il ban effettivo, il lavoro si sposta sul binario legale e analitico: identificazione della fonte di rischio, preparazione dell'analisi on-chain, conferma dell'origine dei fondi e comunicazione con Tether e le strutture statali che hanno avviato la blacklist — con il coinvolgimento di consulenti legali competenti.

06Segnali

Come capire che il tuo indirizzo è stato inserito in blacklist da Tether

Spesso gli utenti non notano subito la blacklist. A prima vista tutto sembra normale: gli USDT sono mostrati nel saldo, la rete funziona, l'indirizzo è corretto, i trasferimenti in entrata vengono accreditati con successo. Ma quando si prova a inviare USDT, la transazione fallisce.

Altre operazioni sull'indirizzo possono continuare a funzionare normalmente. Ad esempio, l'utente può inviare con successo TRX o altri token, mentre il problema si presenta solo con i trasferimenti USDT in uscita. Questo è un segnale importante: la blacklist di Tether si applica a livello di smart contract USDT, non all'intero indirizzo sulla rete TRON.

I trasferimenti USDT in uscita falliscono, mentre le altre operazioni (invio di token nativi, ricezione di fondi in entrata) funzionano normalmente.

Il principale segnale di blacklist

Se l'indirizzo è nella BlackList di Tether, lo smart contract USDT rifiuta il tentativo di trasferimento in uscita. Nel wallet, questo può apparire come un errore di invio, e nel block explorer la transazione può mostrarsi con stato Failed.

È importante distinguere la blacklist dai comuni problemi tecnici:

  • Token nativo insufficiente (TRX, ETH) per pagare le commissioni;
  • Il wallet non invia la transazione (bug dell'interfaccia, dell'RPC o del wallet);
  • Congestione della rete o interruzioni temporanee dell'infrastruttura.
07Verifica

Come verificare la blacklist tramite lo smart contract USDT

Passo 1. Apri lo smart contract USDT su TRON in Tronscan: TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

Passo 2. Vai alla scheda Contract.

Passo 3. Apri la sezione Read Contract.

Passo 4. Trova il metodo getBlackListStatus. In Tronscan può apparire come «8. getBlackListStatus (59bf1abe)».

Passo 5. Inserisci l'indirizzo che vuoi verificare ed esegui la query.

Risultato della chiamata getBlackListStatus

La verifica manuale tramite Tronscan va bene per un controllo occasionale. Per una risposta rapida, è meglio usare il monitoraggio automatico: può tracciare le aggiunte alla BlackList tramite l'evento AddedBlackList e — quando la funzionalità è disponibile — far emergere i segnali di un'imminente blacklist prima dell'effettivo evento AddedBlackList.

08Dove osservare in tempo reale

Come monitorare l'attività di blacklist USDT in tempo reale

Ogni evento — preban, ban, unban, destroy — viene registrato pubblicamente on-chain. Ciò significa che chiunque può costruire un monitoraggio:

  • Approccio diretto — gestire un nodo archivio TRON ed Ethereum, iscriversi agli event log dello smart contract USDT tramite WebSocket. È il più economico in termini di costo, ma richiede infrastruttura.
  • Tramite servizi di terze parti — QuickNode Streams, webhook di Alchemy, Infura. A pagamento, ma senza infrastruttura propria.
  • Tramite un prodotto già pronto — noi lo facciamo in tempo reale dal 2017: feed di alert su Telegram, REST API, server MCP per strumenti AI, dataset HuggingFace per i ricercatori.

Approfondimenti