INTERN GEPRÜFT · NULL KRITISCHE BEFUNDEBNB Smart Chain (BEP-20)UUPS-Proxy (ERC-1967)Solidity 0.8.24

J1USD Smart-Contract-Sicherheits- & Technische Bewertung

Umfassender Architektur- und Verifizierungsbericht des J1USD-Tokensystems auf der BNB Smart Chain. Technisch überprüft auf Upgrade-Sicherheit, unveränderliche Zugriffskontrollen, Angebotsinvarianten und handelsplatzübergreifende Liquiditätstrennung.

Offenlegung der Bewertung: Diese sicherheitstechnische Bewertung wurde intern vom Entwicklungs- und Sicherheitsteam von AirJIT durchgeführt. Es handelt sich nicht um ein unabhängiges Smart-Contract-Audit durch Dritte.

Null Kritische Befunde

0 Critical

0 hohe / 0 kritische Schwachstellen in den zentralen Token-Verträgen identifiziert.

Strikte Angebotsobergrenze

1,000,000,000

Unveränderliches Limit von 1.000.000.000 J1USD auf Bytecode-Ebene erzwungen.

Rollentrennung

RBAC Partitioned

Eigenständige Adressen für Administrator, Upgrader, Minter, Burner und Pauser.

UUPS-Speicherlücken

__gap[42]

42 reservierte Speicherslots (__gap[42]) verhindern Speicherkonflikte bei zukünftigen Upgrades.

VERIFIZIERTE ON-CHAIN-BEREITSTELLUNGEN

Kanonische Vertragsadressen & Verifizierung

J1USD wird über ein modulares OpenZeppelin ERC-1967 UUPS-Proxy-Muster ausgeführt. Nachfolgend sind die verifizierten Quellverträge aufgeführt, die im BNB Smart Chain Mainnet bereitgestellt wurden.

Offizieller Token-Proxy
Halten & Handeln über diese Adresse

J1USDProxy.sol

Kanonische, benutzerseitige BEP-20-Tokenadresse. Alle Guthaben, Freigaben und Speicherzustände verbleiben dauerhaft hier. Kompatibel mit Grey Wallet, MetaMask, Trust Wallet und allen BNB Chain DEXs.

Proxy-StandardERC-1967 (UUPS)
Token-StandardBEP-20 (6 Dezimalstellen)
Logik-Implementierungsvertrag
Keine Gelder hierher senden

J1USDTokenUpgradeable.sol

Logik-Implementierung mit kompilierten Geschäftsregeln, Compliance-Prüfungen, Obergrenzen und Rollenmodifikatoren. Die direkte Initialisierung wird bei der Bereitstellung durch Konstruktorschutz gesperrt.

Versionv1.0.0 (Intern geprüft)
Angebotsobergrenze1.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.

COMPLIANCE- & RICHTLINIENBEWERTUNG

Blacklist-, Kontosperrungs- & Sanktionsmechanismen

Bewertung der Compliance-Mechanismen des Tokens. J1USD ist ein offener BEP-20-Token mit einem aktiven Blacklist- und Sperrmodell – keine Whitelist –, was maximale erlaubnisfreie Komponierbarkeit gewährleistet und gleichzeitig rechtliche Sanktionen ermöglicht.

ERLAUBNISFREIBESTANDEN · Erlaubt

Keine Whitelist-Pflicht (Erlaubnisfreie Übertragungen)

J1USD erfordert KEINE Whitelist. Jede standardmäßige Web3-Wallet auf der BNB Smart Chain kann J1USD frei auf DEXs empfangen, halten, senden und handeln – ohne KYC oder Vorabregistrierung.

Sicherheitsbewertung:Standardübertragungsfunktionen (transfer, transferFrom) werden für unauffällige Konten bedingungslos ausgeführt. Für normale Peer-to-Peer- und DeFi-Transaktionen ist keinerlei Genehmigung erforderlich.
RBAC-GESTEUERTBESTANDEN · Geschützt

Explizite Blacklist-Funktionalität (Sanktionsdurchsetzung)

Eine dedizierte Rolle BLACKLISTER_ROLE kann bösartige Adressen, die mit Hacks, Sanktionen oder Diebstählen in Verbindung stehen, von Belastungen und Gutschriften ausschließen.

Sicherheitsbewertung:addToBlacklist() erfordert einen non-zero bytes32 complianceReference-Hash für die Nachvollziehbarkeit on-chain. Geschützte Systemadressen (DEX AMMs und Treasury) sind mathematisch immun gegen Sperrungen.
STREITFALLISOLIERUNGBESTANDEN · Isoliert

Präzise Teil- & Gesamtkontensperrung

Der Vertrag unterstützt sowohl freezeAccount() als auch freezeBalance(amount). Bei geschäftlichen Streitigkeiten wird nur der strittige Betrag gesperrt, sodass das verbleibende Guthaben liquide bleibt.

Sicherheitsbewertung:availableBalanceOf(account) trennt rechnerisch verfügbare von gesperrten Guthaben. Unstrittige Restguthaben bleiben selbst während laufender Prüfungen zu 100 % übertragbar.
BESCHRÄNKTBESTANDEN · Strikte Beschränkung

Zertifizierter Rechtlicher Einzugsschutz (Wipe)

WIPER_ROLE darf gesperrte Guthaben ausschließlich aufgrund verbindlicher gerichtlicher oder behördlicher Anordnungen vernichten. Eine willkürliche Vermögensvernichtung ist strukturell unmöglich.

Sicherheitsbewertung:Bricht mit WipeRequiresRestrictedAccount ab, wenn die Adresse nicht eingeschränkt oder nicht gesperrt ist. Bricht mit WipeExceedsFrozenBalance ab, falls der Betrag das gesperrte Guthaben übersteigt.

Hook-Prüfung auf Bytecode-Ebene: _update(), _approve() und transferFrom()

Der Bytecode führt in _update(from, to, amount) strenge Soll- und Haben-Prüfungen durch:

Belastungen (_requireCanDebit)

Der Absender darf NICHT auf der Blacklist stehen (!isBlacklisted), das Konto darf NICHT eingefroren sein (!isAccountFrozen), und der Betrag darf availableBalanceOf nicht überschreiten.

Gutschriften (_requireCanCredit)

Der Empfänger darf NICHT auf der Blacklist stehen und NICHT eingefroren sein. Verhindert, dass unrechtmäßige Gelder auf gesperrte Treuhand-Wallets übertragen werden.

Freigaben (_approve)

Sowohl der Tokeninhaber als auch der Bevollmächtigte müssen frei von Beschränkungen sein. Eingeschränkte Parteien können keine Freigaben erteilen oder Drittübertragungen veranlassen.

SMART-CONTRACT-ARCHITEKTUR

Sicherheitsmechanismen & Invariantenanalyse

Tiefgehende Prüfung der J1USD-Kernkomponenten: Proxy-Upgrade-Sicherheit, kryptografische Deduplizierung, Trennung der Verantwortlichkeiten und Notfallsicherungen.

UUPS-Upgrade-Sicherheit

Basiert auf dem OpenZeppelin UUPS-Standard. Zustand und Guthaben werden ausschließlich in Proxy-Slots gespeichert. Der Konstruktor der Implementierung ruft _disableInitializers() auf, um sicherzustellen, dass die Logik nicht eigenständig beansprucht werden kann.

Speichersicherheit: Eine reservierte Lücke von 42 Slots (__gap[42]) verhindert Speicherüberschreibungen bei zukünftigen Upgrades.

Invariante der Angebotsobergrenze

Im Gegensatz zu unbegrenzt geprägten Stablecoins erzwingt J1USD ein supplyCeiling. Jeder mint()-Aufruf stellt sicher, dass totalSupply() + amount <= supplyCeiling gilt. Dem Admin ist es verboten, die Obergrenze unter das aktuelle Umlaufvolumen zu senken.

Maximale Angebotsobergrenze: 1.000.000.000,000000 J1USD (6 Dezimalstellen).

Idempotente Ereignis-Deduplizierung

Präge- und Verbrennungsvorgänge erfordern einen eindeutigen bytes32-Referenzhash (issuanceReference / burnReference). Jeder Versuch, eine Referenz wiederzuverwenden, bricht sofort mit ReferenceAlreadyUsed ab.

Verhindert Replay-Schwachstellen, Doppelprägungen und Indexierungsabweichungen.

Admin-Übergänge mit Zeitschloss

Nutzt AccessControlDefaultAdminRulesUpgradeable. Administratorwechsel können nicht in einem einzelnen Block vollzogen werden; sie erfordern eine zwingende Zeitverzögerung (defaultAdminDelay), um feindliche Übernahmen abzuwehren.

Aufgabentrennung: Upgrader, Minter, Burner und Pauser agieren vollkommen unabhängig voneinander.

Präzises Teil-Einfrieren

Statt ganze Konten komplett zu sperren, führt J1USD freezeBalance ein. Strittige Compliance-Beträge können gezielt eingefroren werden, während availableBalanceOf den normalen Zahlungsverkehr für Restbeträge erlaubt.

Schützt unbeteiligte Guthaben bei geschäftlichen Streitigkeiten.

Geschützte Systemadressen

Wichtige Protokolladressen (PancakeSwap-Pools, Treasury und Betriebsinfrastruktur) sind als protectedSystemAddress registriert und immun gegen Sperrungen oder Blacklists.

Verhindert versehentliche oder böswillige Denial-of-Service-Angriffe auf öffentliche DEX-Handelspaare.

BERECHTIGUNGSMATRIX

Rollenbasierte Zugriffskontrolle (RBAC)

Überprüfung der Privilegien von Administratoren, Emittenten, Verbrennern, Compliance- und Notfallakteuren. Alle privilegierten Funktionen erfordern explizite kryptografische Signaturen.

RollenbezeichnerPrivilegierte Funktion(en)Sicherheitskontrollen & Invarianten
DEFAULT_ADMIN_ROLE0x00 (Admin Root)Konfiguriert Rollenzuweisungen, aktualisiert Angebotsobergrenzen und registriert geschützte Systemadressen.Unterliegt OpenZeppelin AccessControlDefaultAdminRules mit zwingender Zeitschlossverzögerung.
UPGRADER_ROLEkeccak256('UPGRADER_ROLE')Autorisiert UUPS-Logikupgrades in _authorizeUpgrade().Streng auf die Multisig-Governance des Protokolls beschränkt; kann ohne gültigen Vertrag keinen Zustand ändern.
MINTER_ROLEkeccak256('MINTER_ROLE')Gibt neue J1USD-Token gegen verifizierte Sicherheiten oder Abwicklungsanforderungen aus.Streng begrenzt durch die unveränderliche supplyCeiling und die eindeutige issuanceReference-Deduplizierung.
BURNER_ROLEkeccak256('BURNER_ROLE')Reduziert das Tokenangebot bei Rücknahmen oder Bereinigung von Protokollverbindlichkeiten.Erfordert eindeutige burnReference. Ein eng gefasster Bypass erlaubt das Verbrennen aus eingeschränkten Konten.
PAUSER_ROLEkeccak256('PAUSER_ROLE')Aktiviert oder deaktiviert den Notfall-Schutzschalter zum Anhalten von Standardübertragungen.Defensive Notfallfunktion für unvorhergesehene Extremereignisse oder Bridge-Anomalien.
BLACKLISTER_ROLEkeccak256('BLACKLISTER_ROLE')Fügt Adressen zur globalen Soll-/Haben-Blacklist hinzu oder entfernt sie daraus.Kann keine protectedSystemAddress-Ziele sperren. Erfordert Compliance-Referenz zur Nachverfolgung.
FREEZER_ROLEkeccak256('FREEZER_ROLE')Friert ganze Konten oder Teilbeträge ein (freezeBalance, freezeAllCurrentBalance).Ermöglicht das Einfrieren strittiger Beträge bei Beibehaltung der Liquidität für Restmittel. Systemadressen immun.
WIPER_ROLEkeccak256('WIPER_ROLE')Vernichtet gesperrte Guthaben gemäß beglaubigter gerichtlicher oder behördlicher Anordnung.Gilt nur für bereits gesperrte Konten; darf den eingefrorenen Betrag nicht übersteigen.
RESCUE_ROLEkeccak256('RESCUE_ROLE')Rettet versehentlich an den Vertrag gesendete BEP-20-Token Dritter.Darf unter keinen Umständen J1USD-Tokenguthaben berühren (RescueProhibitedToken).

LIQUIDITÄTSINFRASTRUKTUR & POOL-BEWERTUNG

On-Chain DEX-Liquidität vs. Zentralisierte Sekundärpools

J1USD verbindet non-custodial dezentrale AMM-Märkte auf der BNB Smart Chain mit zentralisierten Off-Chain-Orderbüchern. Hier ist die technische Übersicht über Pooladressen, Handelslinks und Sicherheitsgrenzen.

On-Chain Dezentrale Liquidität (DEX)

Automated Market Maker (AMM) Pools

Non-custodial Smart-Contract-Liquiditätspools, die nativ auf der BNB Smart Chain über PancakeSwap betrieben werden. Kein Gegenparteienrisiko; Ausführung rein Peer-to-Contract durch unveränderlichen Bytecode.

PancakeSwap V3 · J1USD / USDC
HAUPTPOOL0,05 % Gebühr

Konzentrierter Liquiditätspool, der J1USD fest an 1,00 USD Coin koppelt. Als geschützte Systemadresse vor Compliance-Sperren geschützt.

PancakeSwap V2 · J1USD / JIT
ÖKOSYSTEM0,25 % Gebühr

Dezentrale AMM-Brücke zur Verknüpfung des AirJIT-Utility-Tokens (JIT) mit dem Abrechnungs-Asset (J1USD).

Off-Chain & Zentralisierte Sekundärpools

Interne Orderbuch-Pools

AirJIT stellt sekundäre Off-Chain-Märkte für wichtige Sicherheitenpaare ohne eigene Vertragsadressen bereit. Die Abrechnung erfolgt über hochperformante Matching-Engines.

Keine Smart-Contract-Prägerechte

Off-Chain-Server besitzen keinerlei private Schlüssel, um J1USD auf der BNB Smart Chain zu prägen oder zu verbrennen.

1:1 On-Chain-Deckung

Interne Off-Chain-Kontoguthaben sind strikt durch geprüfte Einzahlungen auf den On-Chain-Proxyvertrag gedeckt.

BEWERTUNGSBEFUNDE & BEDROHUNGSMODELL

Angriffsvektoren-Analyse & Formale Schutzmaßnahmen

Umfassende Überprüfung potenzieller wirtschaftlicher, mathematischer und kryptografischer Angriffsflächen während des technischen Audits.

IMMUN

Reentrancy-Angriffe

Der Token erbt strikt die ERC-20-Zustandsaktualisierungen von OpenZeppelin (_update), ohne vor der Saldofestschreibung externe Aufrufe zu tätigen. Vollständige Einhaltung von Checks-Effects-Interactions.

NICHT ZUTREFFEND

Orakel- & Spotpreis-Manipulation

Das J1USD-Token-Ledger nutzt bei Übertragungen keine externen Preisorakel. Die Saldoberechnung erfolgt zu 100 % intern, was Flash-Loan-Preismanipulationen ausschließt.

VERHINDERT

Implementierungsübernahme

Der Implementierungskonstruktor führt bei der Bereitstellung _disableInitializers() aus. Der zugrunde liegende Vertrag kann nicht eigenständig von einem Angreifer übernommen werden.

ABGEMILDERT

Feindliche Governance-Übernahme

Die Neuzuweisung von Administratorrollen erzwingt eine unabänderliche Zeitverzögerung (defaultAdminDelay). Ein einzelner kompromittierter Schlüssel kann die Kontrolle nicht sofort an sich reißen.

SICHERHEITSINVARIANTEN

Formal Geprüfte Sicherheitsinvarianten

Zusammenfassung der Bytecode-Prüfungen, die sicherstellen, dass die Systemintegrität in allen Grenzfällen gewahrt bleibt.

Status · Ergebnis

Durchsetzbarkeit der Angebotsobergrenze

Prägevorgänge brechen mit SupplyCeilingExceeded ab, wenn totalSupply() + amount das Limit übersteigt. Dem Admin ist es untersagt, das Limit unter das Umlaufvolumen zu senken.

DurchsetzungsmechanismusPrüfung von supplyCeiling in mint()
Status · Ergebnis

Replay-Deduplizierung für Prägen und Verbrennen

Jede Transaktion erfordert eine idempotente bytes32-Referenz. Wiederholte Aufrufe brechen mit ReferenceAlreadyUsed ab und verhindern Doppelausführungen.

Durchsetzungsmechanismus_usedIssuanceReferences & _usedBurnReferences Mappings
Status · Ergebnis

Schutz vor Übernahme der Implementierung

Der Implementierungsvertrag sperrt Initialisierer im Konstruktor. Angreifer können den Logikvertrag nicht eigenständig initialisieren oder beanspruchen.

DurchsetzungsmechanismusAufruf von _disableInitializers() im Konstruktor
Status · Ergebnis

Kollisionsschutz für Speicherlayouts

Der Proxy-Speicher nutzt Standard-ERC-1967-Slots. Eine reservierte Lücke von 42 Wörtern garantiert, dass künftige Upgrades keine bestehenden Zustandsvariablen überschreiben.

DurchsetzungsmechanismusERC-1967 Standardslots + uint256[42] Lücke
Status · Ergebnis

Schutz vor feindlicher Admin-Übernahme

Die Übergabe von DEFAULT_ADMIN_ROLE erfolgt nicht sofort. Ein zweistufiger Prozess mit Zeitverzögerung schützt vor plötzlichen Schlüsselkompromittierungen.

DurchsetzungsmechanismusAccessControlDefaultAdminRules mit defaultAdminDelay
Status · Ergebnis

Immunität Kritischer Infrastruktur

Registrierte Systemadressen (DEX-Pools, Treasury, Verträge) können weder gesperrt noch auf die Blacklist gesetzt werden, was DoS-Risiken auf Liquiditätsschienen bannt.

DurchsetzungsmechanismusPrüfung _requireNotProtected() in Compliance-Funktionen
Status · Ergebnis

Selbstentleerungssperre bei Tokenrettung

rescueERC20 ermöglicht die Rückholung versehentlich gesendeter Fremdtoken, blockiert jedoch strikt Aufrufe, die auf den J1USD-Vertrag selbst abzielen.

DurchsetzungsmechanismusRescueProhibitedToken Prüfung in rescueERC20()
Status · Ergebnis

Globaler Notfall-Schutzschalter

Die autorisierte PAUSER_ROLE kann Tokenübertragungen und Freigaben bei Marktstörungen sofort stoppen, während rechtliche Einzugsvorgänge erhalten bleiben.

DurchsetzungsmechanismuswhenNotPaused Modifikator auf transfer/mint/approve
Status · Ergebnis

Präzision der Isolierten Guthabensperrung

Erlaubt das Einfrieren strittiger Beträge, ohne das gesamte Wallet des Nutzers zu sperren, sodass überschüssige Beträge liquide bleiben.

DurchsetzungsmechanismusArithmetische Trennung in availableBalanceOf()

VERANTWORTUNGSVOLLE OFFENLEGUNG

Eine Schwachstelle Melden

AirJIT unterhält ein proaktives Programm zur Offenlegung von Sicherheitslücken. Wenn Sie eine Schwachstelle in J1USD, der Implementierung oder Infrastruktur entdecken, melden Sie diese verantwortungsbewusst.

Verschlüsseln Sie sensible Berichte nach Möglichkeit mit PGP. Wir bestätigen alle legitimen Einreichungen innerhalb von 24 Stunden.