內部審查通過 · 零嚴重漏洞BNB Smart Chain (BEP-20)UUPS 代理 (ERC-1967)Solidity 0.8.24

J1USD 智慧合約安全與技術評估

BNB Smart Chain 上 J1USD 代幣系統的全面架構分析與驗證報告。經內部技術審查,驗證其升級安全性、不可變存取控制、硬供應量不變性及跨場所流動性隔離機制。

評估揭露聲明: 本安全與技術評估由 AirJIT 開發與安全團隊在內部獨立完成,不屬於第三方獨立智慧合約審計。

零重大發現

0 Critical

核心代幣合約中發現 0 項高危 / 0 項嚴重安全漏洞。

硬供應量上限

1,000,000,000

在字節碼層級強制執行 1,000,000,000 J1USD 的不可变上限。

職責嚴格分離

RBAC Partitioned

管理員、升級者、鑄造者、銷毀者與暫停者採用獨立地址。

UUPS 儲存槽預留

__gap[42]

預留 42 個儲存槽位 (__gap[42]),防止未來升級時發生狀態衝突。

已驗證鏈上部署

規範合約地址與源碼驗證

J1USD 採用模組化 OpenZeppelin ERC-1967 UUPS 代理模式運作。以下為在 BNB Smart Chain 主網上部署的已驗證源碼合約。

官方代幣代理合約
請持有並交易此地址

J1USDProxy.sol

規範的使用者互動 BEP-20 代幣地址。所有餘額、授權與合約狀態均永久儲存於此。相容 Grey Wallet、MetaMask、Trust Wallet 以及所有 BNB Chain 上的 DEX。

代理標準ERC-1967 (UUPS)
代幣標準BEP-20 (6 位精度)
業務邏輯實作合約
請勿向此地址轉帳

J1USDTokenUpgradeable.sol

包含編譯後的業務規則、合規校驗、供應上限約束及角色修飾符。在部署時透過建構函式守衛鎖死直接初始化。

版本v1.0.0 (內部審查)
供應上限1,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.

合規與策略評估

黑名單、帳戶凍結與制裁履約機制

評估代幣的合規與風控機制。J1USD 是開放的 BEP-20 代幣,採用主動黑名單與凍結機制,而非白名單模式——既確保了最大程度的無許可組合性,又具備應對法定司法制裁的執行能力。

無需許可通過 · 允許

無需白名單要求 (無許可自由轉帳)

J1USD 絕無轉帳白名單。BNB Smart Chain 上的任何標準 Web3 錢包均可自由接收、持有、發送和在 DEX 上交易 J1USD,無需 KYC 審批或協議預註冊。

安全評估:對於所有正常未標記帳戶,標準轉帳函式 (transfer, transferFrom) 無條件執行。日常點對點與去中心化協議操作完全零准入門檻。
RBAC 角色受控通過 · 已防護

顯式黑名單機制 (不良事件合規處理)

專用的 BLACKLISTER_ROLE 角色可限制涉及已知駭客攻擊、制裁或竊盜的惡意地址進行資金扣除或入帳。

安全評估:addToBlacklist() 強制要求傳入非零 bytes32 complianceReference 雜湊,以備鏈上審計追溯。受保護的系統地址(DEX AMM 流動性池與財庫)在數學上免疫黑名單鎖定。
爭議資金隔離通過 · 隔離處理

高精度部分與全量帳戶凍結

合約同時支援 freezeAccount() 和 freezeBalance(amount)。在商業糾紛處理期間,僅凍結存在爭議的特定金額,其餘資金不受影響並維持流動性。

安全評估:availableBalanceOf(account) 動態區分可用餘額與被凍結餘額。即使處於調查期間,未受爭議的清白資金仍可 100% 由持有人自由支配與轉帳。
受限權限通過 · 嚴格限制

經認證的法定資金註銷保護 (Wipe)

WIPER_ROLE 僅可在具備具有法律約束力的法院判決或監管指令時,銷毀被凍結帳戶的資金。結構上杜絕了對任意錢包資產的濫用銷毀。

安全評估:若針對未受限或未凍結地址呼叫,則拋出 WipeRequiresRestrictedAccount 復原;若請求銷毀數額超出已被凍結的餘額,則拋出 WipeExceedsFrozenBalance 復原。

合約級 Hook 鉤子驗證: _update()、_approve() 與 transferFrom()

字節碼在 _update(from, to, amount) 內部執行嚴格的扣款與入帳健全性校驗:

扣款校驗 (_requireCanDebit)

發送方必須未被列入黑名單 (!isBlacklisted)、帳戶未被完全凍結 (!isAccountFrozen),且請求轉帳金額不得超出可用餘額 availableBalanceOf。

入帳校驗 (_requireCanCredit)

接收方必須未被列入黑名單且未被完全凍結。防止不良行為者將非法資金洗入受限託管錢包中。

授權校驗 (_approve)

代幣所有者和授權代理方均須處於非受限狀態。受限實體無法委託授權額度或發起第三方代理劃轉。

智慧合約架構

安全機制與不變量深度分析

對 J1USD 核心組件的深入審計評估:代理升級安全性、密碼學去重、關注點隔離以及緊急安全保護機制。

UUPS 可升級代理安全性

基於 OpenZeppelin UUPS 標準構建。狀態變數與使用者餘額嚴格儲存在代理合約的槽位中。邏輯實作合約在建構函式中呼叫 _disableInitializers(),確保底層實作不能被獨立認領或初始化。

儲存安全:預留 42 個儲存槽 (__gap[42]),防止後續合約版本升級時出現記憶體配置衝突。

硬供應量上限不變量

與無限制增發的穩定幣不同,J1USD 在合約層強制設立了 supplyCeiling。每次 mint() 均強制校驗 totalSupply() + amount <= supplyCeiling。管理員在數學上被禁止將上限下調至當前流通量之下。

最大發行上限:1,000,000,000.000000 J1USD (6 位小數)。

冪等事件防重放去重

鑄造和銷毀操作均強制要求傳入唯一的 bytes32 引用雜湊 (issuanceReference / burnReference)。若交易試圖重複使用已存在的雜湊,將立即以 ReferenceAlreadyUsed 錯誤復原。

徹底消除操作員重放攻擊、重複增發以及鏈下索引偏離風險。

帶時間鎖的管理員交接

採用 AccessControlDefaultAdminRulesUpgradeable 機制。管理員角色的交接無法在單一區塊中立即生效,必須滿足強制時間延遲 (defaultAdminDelay),為防範私鑰被盜提供最後安全防線。

權限明確拆分:升級者、鑄造者、銷毀者與暫停者各自獨立運作。

高精度部分餘額凍結

區別於直接拉黑整帳戶的粗暴方式,J1USD 引入了 freezeBalance。可按爭議金額精確定量凍結,而 availableBalanceOf 仍允許合法未受爭議資金正常流轉。

在商業糾紛解決過程中保護無辜持幣人的合法資產。

受保護的系統基礎設施地址

協議核心地址(PancakeSwap 交易池、財庫以及運作基礎設施合約)均被註冊為 protectedSystemAddress,免疫任何凍結或黑名單操作。

防止因操作失誤或惡意攻擊導致公開 DEX 交易對被拒絕服務。

權限授權矩陣

基於角色的存取控制 (RBAC) 權限表

全面核驗管理、發行、銷毀、合規與緊急操作人員的特權。所有特權函式必須具有與分配角色相匹配的顯式密碼學簽章。

角色識別碼特權函式安全控制與不變量
DEFAULT_ADMIN_ROLE0x00 (Admin Root)配置角色成員、調整發行上限限制以及登記受保護的系統基礎設施地址。受 OpenZeppelin AccessControlDefaultAdminRules 約束,並帶有強制時間鎖延遲。
UPGRADER_ROLEkeccak256('UPGRADER_ROLE')在 _authorizeUpgrade() 中授權 UUPS 業務邏輯實作的升級版本。嚴格限制於協議多簽治理;若沒有合法的已部署合約代碼,無法擅自更改狀態。
MINTER_ROLEkeccak256('MINTER_ROLE')針對經核驗的儲備資產或協議清算需求,鑄造新增 J1USD 代幣。受到不可變 supplyCeiling 上限和唯一 issuanceReference 冪等去重的雙重約束。
BURNER_ROLEkeccak256('BURNER_ROLE')在使用者贖回或協議負債清算時,銷毀指定數量的代幣以縮減供應量。需唯一 burnReference。具備嚴格限制的旁路邏輯,允許在受限帳戶中銷毀以保證協議償付能力。
PAUSER_ROLEkeccak256('PAUSER_ROLE')啟動或解除全系統緊急熔斷機制,暫停常規代幣轉帳。用於應對極端黑天鵝事件或跨鏈橋異常的緊急防禦能力。
BLACKLISTER_ROLEkeccak256('BLACKLISTER_ROLE')向全域轉帳黑名單新增或移除指定地址。無法對 protectedSystemAddress 中標記的系統地址生效;必須提交合規追溯雜湊。
FREEZER_ROLEkeccak256('FREEZER_ROLE')凍結整帳戶或凍結部分指定額度 (freezeBalance, freezeAllCurrentBalance)。支援精確凍結爭議金額,保留正常餘額的流動性;系統地址對此免疫。
WIPER_ROLEkeccak256('WIPER_ROLE')依據正式生效的司法或監管裁決,依法註銷並扣押被凍結的代幣資產。僅可對已被凍結或已列入黑名單的帳戶生效;銷毀數量不得超過被凍結餘額。
RESCUE_ROLEkeccak256('RESCUE_ROLE')找回並提取因誤操作發送至合約的非關聯第三方 BEP-20 代幣。受到 RescueProhibitedToken 約束,嚴禁觸碰或提取 J1USD 本幣資產。

流動性基礎設施與資金池評估

鏈上 DEX 流動性池 vs. 中心化二級訂單簿

J1USD 兼具 BNB Smart Chain 上的非託管去中心化 AMM 市場與中心化鏈下訂單簿撮合模式。以下為各流動性池合約地址、即時交易入口及安全界限的技術分析。

鏈上去中心化流動性 (DEX)

自動造市商 (AMM) 流動性池

依託 PancakeSwap 在 BNB Smart Chain 上原生運作的非託管智慧合約流動性池。零交易對手託管風險;交易純粹基於不可變的合約字節碼進行點對合約撮合。

PancakeSwap V3 · J1USD / USDC
核心主池0.05% 手續費

集中流動性池,將 J1USD 緊密錨定在 1.00 USD Coin。已被指定為受保護系統地址,免疫合規凍結。

PancakeSwap V2 · J1USD / JIT
生態橋樑0.25% 手續費

去中心化 AMM 橋樑,連接 AirJIT 生態實用代幣 (JIT) 與協議結算資產 (J1USD)。

鏈下與中心化二級資金池

內部訂單簿撮合池

AirJIT 在主流抵押資產對間提供鏈下二級市場報價,無需獨立的智慧合約地址。訂單撮合與結算透過中心化高吞吐匹配引擎完成。

零智慧合約鑄造特權

鏈下匹配伺服器不持有任何有權在 BNB Smart Chain 上增發或銷毀 J1USD 的私鑰。

1:1 鏈上真實資產背書

鏈下內部帳戶餘額嚴格受限於已在鏈上代理合約中核驗確權的代幣存入量。

評估結論與威脅建模

攻擊向量分析與形式化防禦措施

技術審計期間針對潛在的經濟學、數學計算及密碼學攻擊面進行的全面審查報告。

免疫

重入攻擊 (Reentrancy)

代幣嚴格繼承 OpenZeppelin ERC-20 狀態更新機制 (_update),在更新餘額狀態前絕不發起不可信的外部合約呼叫,全面遵從 Checks-Effects-Interactions 規範。

不適用

預言機與現貨價格操縱

J1USD 代幣帳本在執行轉帳或授權時不依賴任何外部價格預言機。餘額計算 100% 內部完成,徹底消除了閃電貸操縱價格引發的套利漏洞。

已預防

底層邏輯實作劫持

邏輯實作合約在部署時即透過建構函式執行 _disableInitializers()。底層實作代碼絕無法被攻擊者獨立初始化或佔有所有權。

已緩解

治理權惡意篡奪

管理員角色的重新分配受制於不可篡改的時間延遲機制 (defaultAdminDelay)。單一私鑰外洩無法在瞬間奪取對代幣的最高控制權。

安全不變量檢查

形式化安全不變量檢驗

字節碼層級邏輯斷言彙總,驗證系統在所有極端邊界情境下均能確保核心安全性與完整性。

狀態 · 驗證結果

硬供應上限不可侵犯

若 totalSupply() + amount 超出鏈上預設上限,鑄造操作將以 SupplyCeilingExceeded 復原。協議禁止管理員將上限調低至當前流通量之下。

強制執行機制mint() 中的 supplyCeiling 狀態校驗
狀態 · 驗證結果

鑄造與銷毀冪等防重放

每筆增發與銷毀交易均需提供唯一的 bytes32 引用識別碼。重複使用同一雜湊的重複請求將以 ReferenceAlreadyUsed 復原,杜絕二次執行。

強制執行機制_usedIssuanceReferences 與 _usedBurnReferences 映射表
狀態 · 驗證結果

實作邏輯防惡意接管

邏輯實作合約在建構時自動鎖定初始化器。攻擊者無法獨立初始化或奪取底層邏輯合約的所有權。

強制執行機制建構函式中的 _disableInitializers() 呼叫
狀態 · 驗證結果

儲存槽版面配置防衝突保護

代理儲存嚴格遵循 ERC-1967 標準。預留的 42 槽位緩衝空間可確保未來合約版本升級時不會覆寫現有狀態變數。

強制執行機制ERC-1967 標準儲存槽 + uint256[42] 預留空隙
狀態 · 驗證結果

防範管理員惡意篡位

轉移 DEFAULT_ADMIN_ROLE 並非立即生效。兩步確認流程加上強制的時間延遲,有效防止了私鑰突發外洩或惡意篡權的災難性風險。

強制執行機制帶 defaultAdminDelay 延遲的 AccessControlDefaultAdminRules
狀態 · 驗證結果

核心系統基礎設施免疫保護

已註冊的系統地址(DEX 資金池、財庫及運作合約)無法被凍結或拉黑,從根本上消除了對公共流動性通路的阻斷服務風險。

強制執行機制合規函式中的 _requireNotProtected() 校驗
狀態 · 驗證結果

代幣資產救援防自身被盜

rescueERC20 函式支援找回誤轉入合約的第三方代幣,但明確禁止針對 J1USD 本幣合約地址發起提取。

強制執行機制rescueERC20() 中的 RescueProhibitedToken 校驗
狀態 · 驗證結果

全系統緊急熔斷斷路器

在發生嚴重市場異常時,被授權的 PAUSER_ROLE 可立即暫停代幣轉帳與授權,同時依法保留合規資產扣押操作。

強制執行機制transfer/mint/approve 上的 whenNotPaused 修飾符
狀態 · 驗證結果

爭議資金隔離凍結精度

支援僅凍結存在合規爭議的特定資金,無需封鎖使用者整個錢包,其餘合法資產依然維持充裕流動性。

強制執行機制availableBalanceOf() 演算法隔離

負責任的漏洞披露

報告安全漏洞

AirJIT 實行積極主動的漏洞披露計劃。若您在 J1USD 代理、邏輯實作或智慧合約基礎設施中發現安全缺陷,請透過合規途徑安全通報。

如涉及高敏內容,建議使用 PGP 加密報告。我們承諾在 24 小時內確認並回應所有合規報告。