Proof of reserves
Your USDC sits in a vault contract on Hyperliquid, not in an exchange wallet. Every 15 minutes the exchange commits to every user’s claim in a Merkle root and anchors it in the vault. Check your own leaf here, in your browser, and keep the proof: it is your way out.
Reserves
The vault's USDC on HyperCore, against everything the exchange owes its users.
- Vault observation
- HyperCore height 721999407 · journal #47937 · …
- Reconciliation
- Matched ledger
- Ledger moved since
- Nothing: the observation is current
- Vault contract
- 0xa42a73…0f2aab
- Epoch
- 202
- Pinned position
- #48028
- Root
- 0x5adef5…de2cb8
- Vault's solvency flag
- Solvent · balance 745.35 USDC
- Transaction
- 0x8477e4…542cbf
- EVM block / L1 height
- 66181370 / 722084307
Claims are at the journal tip; the balance is from the last vault observation. Both are public reads. Why can a small shortfall appear?
Latest commitment
The newest Merkle tree of every user's claim, pinned by the exchange.
- Pinned
- 2026-10-06 12:58 UTC · …
- Next pin (expected)
- …
- Cash claims
- $745.35
- Pending withdrawals
- $0.00
- In-flight payouts
- $0.00
- Unclaimed deposits
- 0.00 USDC
- On chain
- Anchored · epoch 202
Verify my balance
Fetch your own leaf and its Merkle proof, and check it here in your browser.
Pinned roots
212 pinned roots · 152 anchored on HyperEVM
| Position | Pinned (UTC) | Root | Leaves | User claims | On chain | Transaction | EVM block | Direct check |
|---|---|---|---|---|---|---|---|---|
| #48028 | Oct 06 12:58 | 0x5adef5…de2cb8 | 12 | $745.35 | 0x8477…2cbf | 66181370 | ||
| #48013 | Oct 06 12:43 | 0x0eb4c3…ee8324 | 12 | $745.35 | 0x3356…b69c | 66180430 | ||
| #47998 | Oct 06 12:28 | 0xc46a38…a28331 | 12 | $745.35 | 0xfdce…71df | 66179549 | ||
| #47983 | Oct 06 12:13 | 0xc324a6…0ac13d | 12 | $745.35 | 0xf724…ed0e | 66178608 | ||
| #47951 | Oct 06 11:42 | 0xe11e85…6ee518 | 12 | $745.35 | 0x7dc9…2fd7 | 66177727 | ||
| #47921 | Oct 06 11:27 | 0xc95c70…c757e6 | 12 | $745.35 | 0x3f13…f286 | 66177662 | ||
| #47719 | Oct 06 11:12 | 0x4f5be6…9a6653 | 12 | $747.35 | — | — | ||
| #47527 | Oct 06 10:56 | 0x5c0827…a455c4 | 12 | $745.35 | — | — | ||
| #47330 | Oct 06 10:41 | 0x894fe2…ffc804 | 12 | $745.35 | — | — | ||
| #47138 | Oct 06 10:26 | 0xea7716…acfcda | 12 | $745.35 | — | — | ||
| #46943 | Oct 06 10:11 | 0x2cf753…666a22 | 12 | $747.35 | — | — | ||
| #46750 | Oct 06 09:56 | 0xa13bd2…60f724 | 12 | $745.35 | — | — | ||
| #46553 | Oct 06 09:41 | 0xcaaf64…203bf0 | 12 | $745.35 | — | — | ||
| #46362 | Oct 06 09:26 | 0x8cc2f9…17d0df | 12 | $745.35 | — | — | ||
| #46163 | Oct 06 09:11 | 0xd8e956…82f3c8 | 12 | $747.35 | — | — | ||
| #45970 | Oct 06 08:56 | 0xfaf539…df5e7f | 12 | $745.35 | — | — | ||
| #45773 | Oct 06 08:41 | 0xff8fc6…1282cc | 12 | $745.35 | — | — | ||
| #45582 | Oct 06 08:26 | 0x07b26a…962f75 | 12 | $745.35 | — | — | ||
| #45393 | Oct 06 08:11 | 0xc411cc…dca646 | 12 | $747.35 | — | — | ||
| #45208 | Oct 06 07:56 | 0x862387…682ed3 | 12 | $745.35 | — | — |
- #480282026-10-06 12:58 UTC$745.35 · 12 leavesRoot0x5adef5…de2cb8Tx 0x8477…2cbf
- #480132026-10-06 12:43 UTC$745.35 · 12 leavesRoot0x0eb4c3…ee8324Tx 0x3356…b69c
- #479982026-10-06 12:28 UTC$745.35 · 12 leavesRoot0xc46a38…a28331Tx 0xfdce…71df
- #479832026-10-06 12:13 UTC$745.35 · 12 leavesRoot0xc324a6…0ac13dTx 0xf724…ed0e
- #479512026-10-06 11:42 UTC$745.35 · 12 leavesRoot0xe11e85…6ee518Tx 0x7dc9…2fd7
- #479212026-10-06 11:27 UTC$745.35 · 12 leavesRoot0xc95c70…c757e6Tx 0x3f13…f286
- #477192026-10-06 11:12 UTC$747.35 · 12 leavesRoot0x4f5be6…9a6653
- #475272026-10-06 10:56 UTC$745.35 · 12 leavesRoot0x5c0827…a455c4
- #473302026-10-06 10:41 UTC$745.35 · 12 leavesRoot0x894fe2…ffc804
- #471382026-10-06 10:26 UTC$745.35 · 12 leavesRoot0xea7716…acfcda
- #469432026-10-06 10:11 UTC$747.35 · 12 leavesRoot0x2cf753…666a22
- #467502026-10-06 09:56 UTC$745.35 · 12 leavesRoot0xa13bd2…60f724
- #465532026-10-06 09:41 UTC$745.35 · 12 leavesRoot0xcaaf64…203bf0
- #463622026-10-06 09:26 UTC$745.35 · 12 leavesRoot0x8cc2f9…17d0df
- #461632026-10-06 09:11 UTC$747.35 · 12 leavesRoot0xd8e956…82f3c8
- #459702026-10-06 08:56 UTC$745.35 · 12 leavesRoot0xfaf539…df5e7f
- #457732026-10-06 08:41 UTC$745.35 · 12 leavesRoot0xff8fc6…1282cc
- #455822026-10-06 08:26 UTC$745.35 · 12 leavesRoot0x07b26a…962f75
- #453932026-10-06 08:11 UTC$747.35 · 12 leavesRoot0xc411cc…dca646
- #452082026-10-06 07:56 UTC$745.35 · 12 leavesRoot0x862387…682ed3
“Check the vault” reads the vault contract’s epoch(n) straight from the public HyperEVM testnet RPC in your browser, without going through Azumi. No HyperEVM testnet block explorer serves pages today, so transactions are shown as hashes to copy.
How it works
- 1Pin
Every 15 minutes the exchange builds a Merkle tree of every user's claim at one journal position, and pins it. The tree is a pure function of the journal: anyone with the journal can rebuild it.
- 2Anchor
A root poster posts each pin's root, leaf count and sums to the vault contract on HyperEVM, with the vault's own HyperCore balance. The contract records it as an epoch.
- 3Verify
You fetch your own leaf and proof with a signed read. Your browser checks the proof against the root, and the root against the vault contract.
- 4Exit
If roots stop arriving for long enough, anyone can open the vault's escape hatch on the newest root. You then call exit(leaf, proof) on the vault and are paid without the exchange.
Your address, your account id, your claim, your pending and in-flight withdrawals, your completed payouts, three flags and a salt. A deposit not yet claimed gets its own suspense leaf.
Cash only: max(cash, 0). Open positions are a flag, not a value. A position’s worth is not in the tree.
- Proofs carry sibling hashes. The salt stops a neighbour’s claim from being guessed against them, so never share a salt.
- Accounts the operator opened, and unclaimed deposits under one micro-dollar, are in no leaf.
- A root not yet anchored is only the exchange’s word: two users could be shown different roots at one position. Check anchored roots.
- The vault’s solvency flag is lenient by in-flight payouts. The headline above is the exchange’s exact check.
- This is testnet. The USDC is Hyperliquid testnet USDC.