Circle USD (USDC) on Aave Arc Assessments

This thread is the home for all risk and technical assessments of USDC on Aave Arc.

It collects, in one place:

  • The pre-listing asset risk assessment, under the Aave Risk Framework.
  • The pre-listing technical asset assessment, under the Technical Asset Listing Framework.
  • All post-listing monitoring reports, periodic refresh assessments, and any re-evaluations triggered by material changes.

New assessments and updates will be posted as replies below as they are produced, so the full history stays in a single thread.

Title: [Asset Technical Assessment] USDC on Arc
Author: Aave Labs
Date: 2026-09-15


Summary

Technical assessment of USDC on Arc, following the Technical Asset Listing Framework.

Overall result: :yellow_circle: MEDIUM :yellow_circle:

USDC is Arc’s native gas currency, with a standard ERC20 surface, a live Chainlink USDC/USD price feed, and a canonical FiatToken V2.2 codebase that the reviewer confirms was audited with no significant findings. The principal considerations are Circle’s privileged controls without an onchain delay, including an account freeze that prevents a frozen address from transacting, and the distinct gas currency implementation, deployed as NativeFiatToken V2.2. All privileged roles are held by Circle, but there is no concentration risk since each role sits on its own distinct address (see Section 3).

Technical conclusion

From a technical standpoint, USDC is eligible for listing on Arc.

Asset under review

Field Value
Asset USD Coin (USDC)
Target chain Arc mainnet (chain ID 5042)
Token contract 0x3600000000000000000000000000000000000000
Native to target chain? Yes, Arc’s native gas currency
Aave Asset Classification (AAcA) Stablecoin backed by fiat, with a US dollar peg

USDC is Circle’s US dollar stablecoin and Arc’s native gas currency. It operates in a dual mode on Arc: as the native gas currency and through an ERC20 interface that represents each account’s native balance, both described further throughout this assessment. Circle issues and destroys supply through its minter system and its bridge.

0. Pre-screening

USDC is an active genesis deployment at Arc’s fixed gas currency address, implemented as a ZeppelinOS transparent proxy. Its implementation and proxy administrator have not changed since genesis; it is classified as a stablecoin backed by fiat and is not in a non-approved or sanctioned category. The reviewer confirms that Circle’s canonical FiatToken V2.2 codebase, from which the Arc implementation (NativeFiatToken V2.2) derives, was audited with no significant findings.

Rating: :yellow_circle: MEDIUM :yellow_circle: → the active deployment uses a distinct gas currency implementation.

1. ERC20 Compliance

USDC has a standard ERC20 surface with six decimals: transfer() and transferFrom() return a boolean, with no fee on transfer, rebasing, ERC777 or ERC1363 hooks, or flash mint. Its accounting is native to the protocol, with balances tracked at 18 decimals and truncated to comply with the six-decimal ERC20 interface. Its balance is a view over native account balance, and contracts can hold and transfer it subject only to the issuer’s account freeze capability, assessed in Section 3. Mixing the ERC20 interface and native transfers within the same integration is a source of behavioral risk, since both resolve to the same underlying execution-layer balance (see Section 5).

Rating: :green_circle: GOOD :green_circle:

2. Oracle

A live Chainlink USDC/USD feed on Arc provides a price with eight decimals, a 24 hour heartbeat, and a 0.5% deviation threshold. Ethereum mainnet’s USDC/USD feed uses a 23 hour heartbeat and a 0.25% deviation threshold.

Rating: :green_circle: GOOD :green_circle:

3. Access Control

Circle’s proxy administrator, token owner, pauser, freeze authority, and the owner of the MasterMinter contract are Cold Storage EOAs, meaning single-key addresses held in offline storage by Circle’s team, under the recorded reviewer determination. Each role sits on its own distinct address, so no single key holds more than one privileged role. No onchain timelock protects these roles: the MasterMinter owner can change minter allowances, while the pauser can halt token activity and the freeze authority has frozen 419 addresses; frozen balances cannot be seized or destroyed. Since USDC is Arc’s native gas currency, a freeze also prevents the address from transacting; live minter allowances total 53,195.851980 USDC, approximately 1.22% of supply, but the authority that sets them can increase them without delay. All of these roles are held by Circle, concentrating every privileged control over USDC in a single entity, though not in a single address.

Rating: :yellow_circle: MEDIUM :yellow_circle: → privileged controls are accepted as Cold Storage EOAs, but operate without an onchain delay, and the freeze authority also halts an address’s use of USDC as gas.

4. Exchange Rate and Yield

Not applicable. USDC is a stablecoin backed by fiat with no exchange rate function, rebase, or yield accrual.

Rating: :white_circle: N/A :white_circle:

5. Token Architecture

USDC has one canonical token contract on Arc, but with dual entry point: native, protocol-level transfers and the ERC20 interface, both of which resolve to the same execution-layer accounting rather than token storage. USDC implements EIP-7708, so native balance movements emit an ERC20-style Transfer event for compatibility with existing indexing and tooling. Blacklisting and freeze operations are enforced at the execution layer rather than in contract-level storage; because USDC is Arc’s native gas currency, an account with no balance cannot transact, and an address on the freeze authority’s blacklist (see Section 3) cannot transact either, regardless of balance. Aave’s own integration with USDC uses only the ERC20 entry point, so this dual entry point does not affect Aave’s exposure directly. Mint and burn events provide supply observability, while the implementation has no tx.origin authorization or delegatecall outside the proxy pattern.

Rating: :yellow_circle: MEDIUM :yellow_circle: → the main concern is USDC’s dual entry point, native transfers and the ERC20 interface both resolving to the same execution-layer balance; Aave’s integration uses only the ERC20 interface and is not exposed to this concern.

6. Bridge and Cross Chain Risk

USDC has one external mint route, Circle’s Cross Chain Transfer Protocol (CCTP), which burns supply on the source chain and mints it on Arc. Two Circle attesters are both required to authorize CCTP messages, and the bridge has 28 remote domains and a 100,000 USDC limit per message, without an aggregate throughput limit. Bridge administration, including the authority that can change the attester set and threshold, is held by Circle addresses without an onchain delay.

Rating: :yellow_circle: MEDIUM :yellow_circle: → both attesters must authorize the burn and mint route, which has a limit per message, but it relies on one issuer trust domain with no onchain delay across its administration.

7. Audit and Security History

The reviewer confirms that Circle’s canonical FiatToken V2.2 implementation was audited with no significant findings, and the CCTP audit report identified no relevant findings for the bridge’s message verification. The deployed gas currency implementation, NativeFiatToken V2.2, differs substantially from the canonical codebase, and neither audit report covers it directly. Its implementation has not changed since genesis, and its observed ERC20 behavior is standard. Circle has confirmed that the relevant audit report will be made public shortly after launch.

Rating: :yellow_circle: MEDIUM :yellow_circle: → the canonical codebase and CCTP are both covered by reviewed audits, but the distinct NativeFiatToken V2.2 gas currency implementation is not; Circle has confirmed a public report will follow shortly after launch.

8. Dependencies

USDC depends on Circle’s offchain US dollar reserves, the MasterMinter control path (see Section 3), the CCTP bridge (see Section 6), and the Arc system components that support its gas currency design (see Section 5). Arc has no onchain proof of reserve feed, decentralised exchange, or permissionless onchain redemption path; redemption is an offchain Circle Mint process for permitted participants.

Rating: :yellow_circle: MEDIUM :yellow_circle: → value, issuance, and redemption depend on Circle’s offchain reserves and operational systems, alongside privileged onchain control paths.

9. Summary

Findings table

Ratings in this table are plain text (Good / Medium / Critical / N/A), no icons.

Area Key finding Rating
0. Pre-screening Active genesis deployment at Arc’s gas currency address, structured as a transparent proxy with no implementation rotation; the reviewer confirms Circle’s canonical FiatToken V2.2 codebase was audited with no significant findings. Medium
1. ERC20 Standard ERC20 surface with six decimals, no fee on transfer, rebase, hooks, or flash mint. Good
2. Oracle Live Chainlink USDC/USD feed with eight decimals, within its 24 hour heartbeat. Good
3. Access control Cold Storage EOAs control upgrades, roles, pause, freezes, and discretionary mint allowances without an onchain delay; a USDC freeze also prevents the address from transacting. Medium
4. Exchange rate / yield Stablecoin backed by fiat with no yield or exchange rate mechanism. N/A
5. Token architecture Dual entry points, native transfers and the ERC20 interface, both resolve to the same execution-layer balance; the implementation (NativeFiatToken V2.2) remains distinct from standard FiatToken V2.2 code. Medium
6. Bridge and cross chain CCTP burn and mint route with two required Circle attesters, 28 remote domains, and a 100,000 USDC limit per message. Medium
7. Audit and security FiatToken V2.2 and CCTP are covered by reviewed audits; the distinct NativeFiatToken V2.2 gas currency implementation is not, though Circle confirmed one will be made public shortly after launch. Medium
8. Dependencies Relies on Circle’s offchain reserves and redemption, MasterMinter and CCTP control paths, and Arc system components. Medium

Disclaimer

Aave Labs has no formal or informal affiliation with Circle or the USDC issuer beyond this technical assessment. Aave Labs has not been compensated by Circle or any related party in connection with this work.

Copyright

Copyright and related rights waived via CC0.

Summary

USDC on Arc serves as the network’s native gas token and is deployed as an upgradable FiatTokenProxy contract. It can be bridged to Arc via both Circle Mint and CCTP. CCTP cross-chain messaging relies on a 2-of-2 attestation threshold controlled entirely by Circle.

The key findings include that access control across all contracts, including both assets and bridge contracts in scope, relies on EOAs managed under Circle’s enterprise-grade key management program, which they claim maintains SOC 2 Type 2 attestation and follows NIST frameworks across the infrastructure. Further, no timelocks gate sensitive contract upgrades, consistent with Circle’s operational model for USDC on other networks.

1. Asset Fundamental Characteristics

Circle’s USDC on Arc is deployed as an upgradable ERC20 FiatTokenProxy contract that uses the FiatTokenV2_2 implementation contract. USDC is natively minted on Arc, with Circle Mint enabling minting and bridging via CCTP. Redemptions through Circle Mint are accessible only to qualified persons/businesses. The token’s design is consistent with other chains where USDC is listed on Aave.

USDC is also the gas asset on Arc. The token is therefore located at the fixed predeploy address, where the ERC20 interface is served over the native balance rather than over a standalone token ledger. Its implementation is a superset of the implementation shared by EURC and cirBTC, carrying three additional functions that service the native-balance accounting. As of September 17, 2026, the total supply on Arc is 647.75M USDC.

1.1 Bridge Risk

USDC can be bridged to and from Arc via CCTP which is a burn-and-mint protocol. Rather than locking a token on a home chain and minting a wrapped representation elsewhere, it burns the native token on the source chain and mints an equal amount of the same native token on the destination chain, so every unit remains canonical, and there is no escrow contract holding bridged collateral. The contracts are open source in Circle’s evm-cctp-contracts repository.

The mechanism runs across three contract roles per chain. The TokenMessenger exposes depositForBurn, which pulls the user’s tokens and calls the TokenMinter to burn them, while the TokenController, which it inherits, enforces a per-message burn limit and holds the registry that pairs each local token with its counterpart token on each remote domain, assuming a 1:1 fungible exchange. The MessageTransmitter then emits the cross-chain message. On the destination chain, the relationship is reversed: a caller submits the message and Circle’s signed attestation to the destination MessageTransmitter, which verifies the attestation before the TokenMessenger instructs the destination TokenMinter to mint the equivalent amount of the native token to the recipient. The TokenMinter accepts only mint and burn calls from the registered local TokenMessenger, keeping issuance bounded to the protocol path.


Source:Circle Docs

The trust anchor for CCTP is Iris, Circle’s off-chain Attestation Service, rather than an independent validator or an oracle network. After a burn, Circle’s attesters observe the source-chain event and produce a signature that the destination MessageTransmitter checks against an on-chain attester set using an m-of-n threshold.

Attester Threshold

The attester set threshold is 2/2, with both keys controlled by Circle. Therefore the security consequence for CCTP is that cross-chain integrity would rest on the same single-issuer trust model as the token itself. A compromise of Circle’s attester keys could authorize a mint on a destination chain that is not backed by a real burn. We recommend increasing the number of enabled attesters to at least three participants as outlined in our Risk Framework, and introducing independent third-party attesters at the verification layer.

Rate Limits

The TokenMinterV2 contract enforces a burn limit of 10,000,000 USDC per CCTP message.

2. Market Risk

Unlike typical volatile collateral assets, USDC exhibits a distinct market risk profile driven by its role as the dominant dollar-pegged stablecoin, functioning practically as primary liquidity itself. Beyond its deep global liquidity footprint across centralized exchanges (CEXs) and secondary markets, its risk environment on Arc is unique due to its foundational integration. On Arc, USDC serves as the native gas asset to cover all transaction fees, eliminating volatile fee exposure while establishing a continuous, non-discretionary baseline demand. Furthermore, USDC acts as the primary base currency against which all major token pools are paired on Arc DEXs, making it the central engine for on-chain price discovery, trade routing, and collateral valuation.

3. Technological Risk

3.1 Smart Contract Risk

USDC inherits the smart contract risk profile of Circle’s FiatTokenV2_2 architecture. This codebase is battle-tested, having secured USDC and EURC tokens that are widely used across many chains. The source is open and maintained by Circle in the circlefin/stablecoin-evm repository.

When Circle introduced the v2.2 upgrade, the changeset underwent an independent audit by Halborn, a third-party blockchain security firm. However, we could not locate any of these audits publicly.

3.2 Bug Bounty Program

Circle has had a Bug Bounty Program live on HackerOne since May 2024, with the top bounty set at $5,000 for a critical-severity finding, which is relatively low given the TVL of USDC. The contracts in the scope can be found here.

3.3 Price Feed Risk

Aave on Arc uses a Capped USDC/USD feed with an upward cap of 1.04. The underlying price feed is Chainlink’s USDC/USD SVR feed, which is classified as Low Market Risk.

3.4 Dependency Risk

USDC concentrates several dependencies in a single issuer and a small set of external systems. The most significant is Circle itself. Circle controls minting and burning, operates the Circle Mint distribution platform through which redemptions are processed, and cross-chain support through CCTP. Circle also holds every privileged contract role, including the Proxy Admin, which can upgrade the implementation. Therefore, a failure or compromise at Circle affects reserve, redemption, and contract control.

4. Access Control Risk

Circle uses role-based access control (RBAC) structure for USDC contracts on Arc which is configured as follows, with all the controlling wallets managed under Circle’s enterprise-grade key management program, using a combination of hot and cold wallet infrastructure.

Controlling Wallet Role Functionality
EOA 1 owner Re-assign any role except for admin.
EOA 2 admin Manage proxy-level functionalities.
EOA 3 pauser Pause the contracts, preventing all transfers, minting, and burning.
EOA 4 blacklister Prevent transfers to/from an address and prevent it from minting/burning.
EOA 5, owner of the masterMinter contract masterMinter Add/remove minters and increase their minting allowance.
29 minters configured, with the following having non-zero allowance: Minter1: 545,876,537.91 USDC, TokenMinterV2: 162,729,346.90 USDC, Minter2: 39,063,457.33 USDC, and Minter3: 9,486.01 USDC minters Create/destroy tokens.
Unassigned rescuer Transfer any ERC-20 token locked in the contract.

Disclaimer

This review was independently prepared by LlamaRisk, a DeFi risk service provider funded in part by the Aave DAO. LlamaRisk is not directly affiliated with the protocol(s) reviewed in this assessment and did not receive any compensation from the protocol(s) or their affiliated entities for this work.

The information provided should not be construed as legal, financial, tax, or professional advice.