REVISIONATO INTERNAMENTE · ZERO VULNERABILITÀ CRITICHEBNB Smart Chain (BEP-20)Proxy UUPS (ERC-1967)Solidity 0.8.24

Sicurezza e Valutazione Tecnica dello Smart Contract J1USD

Rapporto completo di analisi architetturale e verifica del sistema di token J1USD su BNB Smart Chain. Esaminato internamente per sicurezza degli aggiornamenti, controlli di accesso immutabili, invarianti di offerta e segregazione della liquidità.

Informativa sulla Valutazione: Questa valutazione tecnica e di sicurezza è stata condotta internamente dal team di sviluppo e sicurezza di AirJIT. Non costituisce un audit indipendente di terze parti sui contratti intelligenti.

Zero Rilievi Critici

0 Critical

0 vulnerabilità alte / 0 critiche identificate nei contratti principali del token.

Tetto Massimo di Offerta

1,000,000,000

Limite immutabile di 1.000.000.000 J1USD applicato a livello di bytecode.

Separazione dei Ruoli

RBAC Partitioned

Indirizzi distinti per Amministratore, Aggiornamento, Coniazione, Bruciatura e Pausa.

Slot di Memoria UUPS

__gap[42]

Spazio riservato di 42 slot (__gap[42]) per evitare collisioni di memoria nei futuri aggiornamenti.

DISTRIBUZIONI ON-CHAIN VERIFICATE

Indirizzi di Contratto Canonici e Verifica

J1USD opera tramite un pattern di proxy UUPS OpenZeppelin ERC-1967. Di seguito sono riportati i contratti sorgente verificati distribuiti sulla mainnet BNB Smart Chain.

Proxy Ufficiale del Token
Conserva e Scambia su Questo Indirizzo

J1USDProxy.sol

Indirizzo canonico del token BEP-20 per gli utenti. Tutti i saldi, le autorizzazioni e lo stato risiedono permanentemente qui. Compatibile con Grey Wallet, MetaMask, Trust Wallet e tutti i DEX su BNB Chain.

Standard ProxyERC-1967 (UUPS)
Standard TokenBEP-20 (6 Decimali)
Contratto di Implementazione Logica
Non Inviare Fondi a Questo Indirizzo

J1USDTokenUpgradeable.sol

Implementazione logica contenente regole di business compilate, verifiche di conformità, tetti di offerta e modificatori di ruolo. L'inizializzazione diretta è bloccata alla distribuzione.

Versionev1.0.0 (Revisione Interna)
Tetto di Offerta1.000.000.000 J1USD
Security Notice for Integrators & Wallets: Always route transfers, deposits, and automated liquidity integrations directly to the Proxy address (0xb3B34F032923DeA2ee8476Df26894E8fA9Eb7F54). The implementation address is stateless bytecode; funds directly transferred to the implementation contract cannot be retrieved by users.

REVISIONE DI CONFORMITÀ E POLITICHE

Meccanismi di Blacklist, Congelamento Conti e Sanzioni

Valutazione dei meccanismi di conformità del token. J1USD è un token BEP-20 aperto che opera con un modello attivo di blacklist e congelamento — e non con whitelist —, garantendo la massima componibilità senza autorizzazioni pur consentendo l'applicazione di sanzioni legali.

SENZA PERMESSISUPERATO · Consentito

Nessun Obbligo di Whitelist (Trasferimenti Senza Permesso)

J1USD NON richiede alcuna whitelist di trasferimento. Qualsiasi wallet Web3 standard su BNB Smart Chain può ricevere, detenere, inviare e scambiare J1USD liberamente sui DEX senza approvazione KYC.

Valutazione di Sicurezza:Le normali funzioni di trasferimento (transfer, transferFrom) vengono eseguite incondizionatamente per tutti i conti non soggetti a restrizioni. Le normali operazioni peer-to-peer e DeFi richiedono zero autorizzazioni.
CONTROLLATO DA RBACSUPERATO · Protetto

Funzionalità Esplicita di Blacklist (Conformità Penale)

Il ruolo dedicato BLACKLISTER_ROLE può limitare gli indirizzi malevoli associati a violazioni, sanzioni o furti verificati, bloccando addebiti e accrediti.

Valutazione di Sicurezza:addToBlacklist() richiede un hash bytes32 complianceReference per l'auditabilità on-chain. Gli indirizzi di sistema protetti (AMM DEX e Tesoreria) sono matematicamente immuni dai blocchi.
ISOLAMENTO CONTROVERSIESUPERATO · Isolato

Congelamento Parziale e Totale dei Conti ad Alta Precisione

Il contratto supporta sia freezeAccount() che freezeBalance(amount). Durante le controversie commerciali, viene bloccato solo l'importo contestato, preservando la liquidità dei fondi rimanenti.

Valutazione di Sicurezza:availableBalanceOf(account) separa dinamicamente i saldi disponibili da quelli congelati. I fondi legittimi non contestati rimangono trasferibili al 100% dal titolare anche durante un'indagine.
LIMITATOSUPERATO · Rigida Restrizione

Protezione Certificata di Cancellazione Legale (Wipe)

Il ruolo WIPER_ROLE può distruggere i saldi congelati solo in virtù di ordini giudiziari o normativi vincolanti. La distruzione arbitraria dei beni è strutturalmente impossibile.

Valutazione di Sicurezza:Rifiuta con WipeRequiresRestrictedAccount se richiamato su un indirizzo non congelato. Rifiuta con WipeExceedsFrozenBalance se l'importo richiesto supera i fondi congelati.

Verifica degli Hook a Livello Bytecode: _update(), _approve() e transferFrom()

Il bytecode esegue rigorose verifiche di addebito e accredito all'interno di _update(from, to, amount):

Addebiti (_requireCanDebit)

Il mittente NON deve essere in blacklist (!isBlacklisted), il conto NON deve essere congelato (!isAccountFrozen) e l'importo non può superare availableBalanceOf.

Accrediti (_requireCanCredit)

Il destinatario NON deve essere in blacklist né congelato. Impedisce a soggetti illeciti di riciclare fondi su conti di custodia con restrizioni.

Autorizzazioni (_approve)

Sia il proprietario che l'operatore delegato devono essere privi di restrizioni. Le entità soggette a restrizioni non possono delegare quote o eseguire trasferimenti conto terzi.

ARCHITETTURA SMART CONTRACT

Meccanismi di Sicurezza e Analisi degli Invarianti

Valutazione approfondita dei componenti chiave di J1USD: sicurezza di aggiornamento del proxy, deduplicazione crittografica, separazione delle competenze e salvaguardie di emergenza.

Sicurezza di Aggiornabilità UUPS

Basato sullo standard UUPS di OpenZeppelin. Variabili di stato e saldi risiedono esclusivamente negli slot del proxy. Il costruttore dell'implementazione chiama _disableInitializers() per garantire che la logica non possa essere rivendicata in modo indipendente.

Sicurezza dello storage: un divario riservato di 42 slot (__gap[42]) impedisce corruzioni della memoria nei futuri aggiornamenti.

Invariante del Tetto Massimo di Offerta

A differenza delle stablecoin con emissione illimitata, J1USD impone un supplyCeiling a livello di contratto. Ogni chiamata mint() verifica che totalSupply() + amount <= supplyCeiling. È vietato all'amministratore abbassare il tetto sotto l'offerta circolante.

Tetto massimo di offerta: 1.000.000.000,000000 J1USD (6 decimali).

Deduplicazione Idempotente degli Eventi

Le operazioni di emissione e bruciatura richiedono un hash di riferimento bytes32 univoco (issuanceReference / burnReference). Qualsiasi tentativo di riutilizzare un riferimento annulla immediatamente la transazione con ReferenceAlreadyUsed.

Previene vulnerabilità di replay degli operatori, doppie emissioni e disallineamenti di indicizzazione.

Transizioni Amministrative con Blocco Temporale

Sfrutta AccessControlDefaultAdminRulesUpgradeable. I trasferimenti del ruolo di amministratore impongono un ritardo obbligatorio (defaultAdminDelay), proteggendo da compromissioni ostili delle chiavi.

Separazione dei ruoli: Aggiornamento, Emissione, Bruciatura e Pausa operano in modo indipendente.

Precisione di Congelamento Parziale

Invece di bloccare interi wallet, J1USD introduce freezeBalance. Gli importi contestati possono essere congelati proporzionalmente mentre availableBalanceOf consente le normali spese per i fondi rimanenti.

Protegge i saldi legittimi durante le controversie commerciali.

Indirizzi di Sistema Protetti

Gli indirizzi chiave del protocollo (pool PancakeSwap, tesoreria e infrastruttura operativa) sono registrati come protectedSystemAddress, rendendoli immuni da congelamenti o blacklist.

Previene denial of service accidentali o intenzionali sulle coppie di trading DEX pubbliche.

MATRICE DI AUTORIZZAZIONE

Permessi di Controllo Accessi Basato sui Ruoli (RBAC)

Verifica dei privilegi tra operatori di amministrazione, emissione, bruciatura, conformità ed emergenza. Tutte le funzioni privilegiate richiedono firme crittografiche esplicite corrispondenti ai ruoli assegnati.

Identificatore RuoloFunzione/i Privilegiata/eControlli di Sicurezza e Invarianti
DEFAULT_ADMIN_ROLE0x00 (Admin Root)Configura le assegnazioni dei ruoli, aggiorna i limiti di offerta e registra gli indirizzi di sistema protetti.Regolato da OpenZeppelin AccessControlDefaultAdminRules con ritardo temporale obbligatorio.
UPGRADER_ROLEkeccak256('UPGRADER_ROLE')Autorizza gli aggiornamenti della logica di implementazione UUPS in _authorizeUpgrade().Ristretto rigorosamente alla governance multifirma; non può modificare lo stato senza contratto valido.
MINTER_ROLEkeccak256('MINTER_ROLE')Emette nuovi token J1USD a fronte di garanzie verificate o esigenze di regolamento.Rigorosamente vincolato dal supplyCeiling immutabile e dalla deduplicazione univoca issuanceReference.
BURNER_ROLEkeccak256('BURNER_ROLE')Riduce l'offerta di token durante riscatti o liquidazione dei debiti del protocollo.Richiede burnReference univoco. Un'eccezione mirata consente di bruciare da conti soggetti a restrizioni per mantenere la solvibilità.
PAUSER_ROLEkeccak256('PAUSER_ROLE')Attiva o disattiva l'interruttore di emergenza che interrompe i trasferimenti standard.Capacità difensiva per eventi catastrofici o anomalie di bridge.
BLACKLISTER_ROLEkeccak256('BLACKLISTER_ROLE')Aggiunge o rimuove indirizzi dalla blacklist globale di addebito/accredito.Non può colpire indirizzi designati in protectedSystemAddress. Richiede riferimento di tracciamento.
FREEZER_ROLEkeccak256('FREEZER_ROLE')Congela interi conti o importi parziali (freezeBalance, freezeAllCurrentBalance).Consente di congelare importi specifici contestati mantenendo il saldo residuo disponibile. Indirizzi di sistema immuni.
WIPER_ROLEkeccak256('WIPER_ROLE')Distrugge i saldi congelati in virtù di un ordine giudiziario o normativo certificato.Applicabile solo a conti già congelati o in blacklist; non può superare l'importo congelato.
RESCUE_ROLEkeccak256('RESCUE_ROLE')Recupera token BEP-20 di terze parti inviati per errore al contratto.Rigorosamente vietato interagire con i saldi del token J1USD (RescueProhibitedToken).

INFRASTRUTTURA DI LIQUIDITÀ E VALUTAZIONE DEI POOL

Liquidità DEX On-Chain vs. Pool Secondari Centralizzati

J1USD bilancia i mercati AMM decentralizzati non-custodial su BNB Smart Chain con registri degli ordini centralizzati off-chain. Ecco la ripartizione tecnica degli indirizzi dei pool, link di trading e confini di sicurezza.

Liquidità Decentralizzata On-Chain (DEX)

Pool di Market Maker Automatizzati (AMM)

Pool di liquidità intelligenti non-custodial operanti nativamente su BNB Smart Chain tramite PancakeSwap. Zero rischio di custodia di terze parti; le transazioni vengono eseguite peer-to-contract tramite bytecode immutabile.

PancakeSwap V3 · J1USD / USDC
PRIMARIOCommissione 0,05%

Pool di liquidità concentrata che ancora saldamente J1USD a 1,00 USD Coin. Indirizzo di sistema designato e protetto da congelamenti.

PancakeSwap V2 · J1USD / JIT
ECOSISTEMACommissione 0,25%

Ponte AMM decentralizzato che collega il token di utilità AirJIT (JIT) e l'asset di regolamento (J1USD).

Pool Secondari Centralizzati e Off-Chain

Pool di Registro Ordini Interno

AirJIT quota mercati secondari sulle principali coppie collaterali off-chain senza indirizzi di contratto dedicati. Il regolamento è gestito da motori di abbinamento centralizzati ad alte prestazioni.

Zero Privilegi di Coniazione su Smart Contract

I server off-chain non possiedono chiavi private autorizzate a coniare o bruciare token J1USD su BNB Smart Chain.

Copertura degli Asset 1:1 On-Chain

I saldi dei conti interni off-chain sono rigorosamente limitati dai depositi verificati sul contratto proxy on-chain.

RISULTATI VALUTAZIONE E MODELLAZIONE DELLE MINACCE

Analisi dei Vettori di Attacco e Difese Formali

Rassegna esaustiva delle superfici di attacco economiche, matematiche e crittografiche esaminate durante la revisione tecnica.

IMMUNE

Attacchi di Reentrancy

Il token eredita rigorosamente gli aggiornamenti di stato ERC-20 di OpenZeppelin (_update) senza effettuare chiamate esterne non attendibili prima di fissare i saldi. Pienamente conforme a Checks-Effects-Interactions.

NON APPLICABILE

Manipolazione di Oracoli e Prezzi Spot

Il registro del token J1USD non consulta oracoli di prezzo esterni durante trasferimenti o autorizzazioni. L'aritmetica è interna al 100%, eliminando manipolazioni tramite prestiti lampo (flash loans).

PREVENUTO

Dirottamento dell'Implementazione

Il costruttore dell'implementazione esegue _disableInitializers() alla distribuzione. Il contratto logico sottostante non può essere inizializzato o posseduto autonomamente.

MITIGATO

Acquisizione Ostile della Governance

La riassegnazione dei ruoli di amministrazione impone un ritardo temporale inalterabile (defaultAdminDelay). La violazione di una singola chiave non può garantire il controllo immediato.

INVARIANTI DI SICUREZZA

Invarianti di Sicurezza Formalmente Verificati

Riepilogo dei controlli a livello di bytecode che attestano la conservazione dell'integrità del sistema in tutti i casi limite.

Stato · Risultato

Applicabilità del Tetto di Offerta

Le operazioni di emissione falliscono con SupplyCeilingExceeded se totalSupply() + amount supera il limite. È vietato all'amministratore abbassare il tetto sotto l'offerta circolante.

Meccanismo di EsecuzioneVerifica di stato supplyCeiling in mint()
Stato · Risultato

Deduplicazione Anti-Replay per Coniazione e Bruciatura

Ogni transazione richiede un identificatore bytes32 idempotente. Chiamate duplicate con lo stesso riferimento vengono respinte con ReferenceAlreadyUsed.

Meccanismo di EsecuzioneMappature _usedIssuanceReferences e _usedBurnReferences
Stato · Risultato

Protezione contro il Dirottamento dell'Implementazione

Il contratto di implementazione blocca gli inizializzatori nel costruttore. Nessun utente malintenzionato può inizializzare o rivendicare la proprietà del contratto logico.

Meccanismo di EsecuzioneChiamata _disableInitializers() nel costruttore
Stato · Risultato

Protezione dalle Collisioni di Memoria

La memoria del proxy rispetta gli slot ERC-1967. Uno spazio riservato di 42 parole garantisce che futuri aggiornamenti non sovrascrivano variabili di stato esistenti.

Meccanismo di EsecuzioneSlot standard ERC-1967 + divario uint256[42]
Stato · Risultato

Mitigazione dell'Acquisizione Ostile dell'Amministrazione

Il trasferimento di DEFAULT_ADMIN_ROLE non è istantaneo. Un processo in due fasi con ritardo temporale protegge da compromissioni improvvise delle chiavi.

Meccanismo di EsecuzioneAccessControlDefaultAdminRules con defaultAdminDelay
Stato · Risultato

Immunità delle Infrastrutture Critiche

Gli indirizzi di sistema registrati (pool DEX, tesoreria, contratti operativi) non possono essere congelati o messi in blacklist, eliminando i rischi di DoS.

Meccanismo di EsecuzioneVerifica _requireNotProtected() nelle funzioni di conformità
Stato · Risultato

Blocco di Auto-Drenaggio nel Recupero Token

La funzione rescueERC20 consente di recuperare token inviati per errore, ma blocca esplicitamente qualsiasi chiamata mirata al contratto J1USD stesso.

Meccanismo di EsecuzioneVerifica RescueProhibitedToken in rescueERC20()
Stato · Risultato

Disgiuntore di Emergenza Globale

Il ruolo autorizzato PAUSER_ROLE può bloccare tempestivamente i trasferimenti in caso di anomalie di mercato, preservando le operazioni legali di cancellazione.

Meccanismo di EsecuzioneModificatore whenNotPaused su transfer/mint/approve
Stato · Risultato

Precisione nel Congelamento Isolato dei Saldi

Consente di congelare importi controversi senza bloccare l'intero wallet dell'utente, lasciando i fondi legittimi eccedenti pienamente liquidi.

Meccanismo di EsecuzioneIsolamento aritmetico in availableBalanceOf()

DIVULGAZIONE RESPONSABILE

Segnala una Vulnerabilità

AirJIT gestisce un programma proattivo di divulgazione delle vulnerabilità. Se riscontri un difetto di sicurezza nel proxy J1USD, nell'implementazione o nei contratti intelligenti, segnalalo responsabilmente.

Se possibile, crittografa i report sensibili con PGP. Rispondiamo a tutte le segnalazioni legittime entro 24 ore.