项目简介
The target of this audit is the private code repository of RWA EVM Contracts of Bitget. The protocol introduces an on-chain Real World Asset (RWA) tokenization implementation on EVM-compatible chains, enabling regulated issuance and redemption of asset-backed tokens representing securities. The system is organized around three core contracts: RWAToken, RWATokenManager, and RWATokenFactory. RWAToken is an upgradeable ERC-20 token deployed via a BeaconProxy pattern, implementing a rebase mechanism in which all token balances are stored as raw values and divided by a global rebase index at read time. The rebase index is updated through a split ratio, allowing the protocol to model corporate splits and reverse splits by adjusting the index proportionally across all holders simultaneously without modifying individual balances. Each RWAToken instance also enforces three-layered compliance guards: KYC verification through IDRegistry, freeze controls, and protocol-wide sanctions screening via SanctionsList. RWATokenFactory handles token deployment and wires each instance to shared infrastructure, including a CorporateActionOracle, which governs time-windowed corporate actions such as rebase splits and name and symbol updates. RWATokenManager acts as the primary entry point for user-facing mint and redeem flows, both of which operate through an EIP-712 Attestation signed by a trusted SIGNER_ROLE. Each attestation binds the token, quantity, price, settlement amount, and expiration into a single one-time-use authorization. Price integrity is enforced by SanityCheckOracle, which validates the attested price against an independent reference via either a Pyth Lazer Pro on-chain verification or a SignedPrice signed by multi-party, rejecting deviations exceeding a configurable basis-point threshold. Throughput is governed by RateLimiter, which applies a linear-decay sliding-window quota at both the global per-token and per-user levels. Market session eligibility is enforced by MarketHours. The protocol is designed for a KYC DEX intermediary model, where partner DEX contracts hold calling rights and are responsible for end-user compliance off-chain before invoking the Manager on behalf of their users.
Please refer to the report for the detailed audit scope.
Our audit methodology employs automated vulnerability scans, manual verification, and business logic analysis to uncover potential security issues coupled with gas and code quality optimization recommendations.
In summary, we did not find any critical issues within the audited codebase. However, we have identified some non-critical issues that should be addressed. Additionally, we have put forth recommendations and notes that should be taken into consideration. It is important to note that the scope of our audit was strictly limited to the specific code versions mentioned in the report. Any updates made subsequent to our review would require a re-evaluation.
关键发现
我们在该智能合约中共发现 4 个潜在问题,另有 5 条建议与 13 条说明,明细如下:
| ID | Severity | Description | Status |
|---|---|---|---|
| 1 | Low | Incompatible event interfaces | Fixed |
| 2 | Low | Incorrect rounding direction in rebase index updates | Confirmed |
| 3 | Low | Inconsistent price scaling | Fixed |
| 4 | Low | Incorrect staleness validation for Pyth price feeds | Confirmed |
| 5 | - | Fix typos | Fixed |
| 6 | - | Fix incorrect events | Fixed |
| 7 | - | Align the documentation with the current implementation | Fixed |
| 8 | - | Strengthen length validation in function validatePrice() |
Fixed |
| 9 | - | Fix the payload format for renaming actions | Fixed |
| 10 | - | Unify configurations across RWAToken instances |
- |
| 11 | - | Attestation issuance responsibility | - |
| 12 | - | Price parity assumption for settleToken |
- |
| 13 | - | Divergent compliance paths across transfer flows | - |
| 14 | - | Ensure enough funds to pay users in redeemVault |
- |
| 15 | - | Dust balance due to precision loss | - |
| 16 | - | Potential centralization risks | - |
| 17 | - | Off-chain calculation for settleAmount |
- |
| 18 | - | Asset backing assumption for inventory management functions | - |
| 19 | - | Off-chain handling after delisting | - |
| 20 | - | Fixed decimal assumption in price normalization | - |
| 21 | - | Allowance usage during rebasing process | - |
| 22 | - | Front-run risks of attestation submission | - |
更多细节见审计报告。