OKX 500375535 PoR Transparency Report
Methodology: PoR Stage Framework
Assessment JSON: 500375535-assessment.json
1. Summary
| Field | Value |
|---|---|
| Exchange | okx |
| Snapshot | 500375535 |
| Snapshot time | 2026-08-10T16:00:00Z |
| PoR Stage | Stage 1 — Verifiable Disclosure |
| Gen / Evidence | Gen 2 / E2 |
| Confidence | medium |
| Effective PoR | true |
OKX publishes public summary, wallet_address_list, wallet_ownership_proof, and global zk proof bundle for audit 500375535. ardmere verifies address ownership and global zk binding, so this snapshot reaches Stage 1.
Stage 1 is supported by public wallet_address_list, wallet_ownership_proof, global_proof, and parameter/proof artifacts. Stage 2 is not reached because canonical official anchoring, stable DA, low-friction user inclusion proof, stronger publication frequency, and full business-consistent constraints are not established in this report.
2. Stage Decision
Stage 1, Effective PoR
| Missing / Blocked Evidence | Risk Flag | Max Stage | Reason |
|---|---|---|---|
canonical on-chain/DA anchor |
NO_CANONICAL_ANCHOR |
Stage 1 | No official exchange canonical on-chain/DA anchor established. |
weekly full PoR / daily anchor |
HIGH_FREQUENCY_GAP |
Stage 1 | Monthly cadence does not satisfy Stage 2 frequency expectations. |
3. Frequency and Freshness
| Field | Value |
|---|---|
| Latest snapshot (evaluation set) | 2026-10-02T16:00:00Z |
| Previous snapshot | 2026-06-18T16:00:00Z |
| Observed cadence | ~monthly |
| History available | 6 snapshot(s) in public evaluation set |
| Event-triggered updates | UNVERIFIABLE |
| Daily root / commitment anchor | UNVERIFIABLE |
| Stage impact | Monthly or slower cadence; does not meet Stage 2 frequency expectations. |
Older snapshot 502260945 is also in the public evaluation set.
4. Evidence and Bundles
Public Artifacts
| Artifact | SHA-256 | Source |
|---|---|---|
summarySnapshot |
a52bb5a36482ee00ac08ae04d3c73b38234d7fe2907fac418ed91d9c7910e291 |
https://www.okx.com/proof-of-reserves/detail |
walletZip |
7db12d643664e0b84ff1e54ffdba339d47298a249afe494c7e770d63dc117462 |
https://static.okx.com/cdn/okx/por/chain/por_csv_2026081100_V6.zip |
globalProofBundle |
c38e880b939d664e91f4e5f14b6c307295b4920156b65f3185ba1b5b6460c63e |
https://static.okx.com/cdn/okx/por/merkel/por_500375535_proof_data.zip |
Bundle References
| Bundle | Value |
|---|---|
| Artifact bundle root | 0x8c29f98a96bb8249a39271bcee97f8a6b8372c17464fd5df343fd553dc56b3c0 |
| Verification bundle root | 0xf064d21e940436287a1ae93eed8f14cbe6e08f3f1080ed921087e478fafcd5d5 |
| Artifact bundle SHA-256 | 66a673b2404118aca399869e8a914a0e1b22240fea324c9fb121900d29443b68 |
| Verification bundle SHA-256 | 4a123dd33b3bf79dcd86acd3a9de8574127631891774878a808fadd1d25a8f33 |
Local bundle paths: 500375535.artifact-bundle.json, 500375535.verification-bundle.v2.json
5. Verifier Evidence
| Verifier | Version | Verdict | Coverage | Summary |
|---|---|---|---|---|
artifact-integrity |
1.0 |
PASS |
1.0000 |
|
solvency-claim |
1.0 |
FAIL |
1.0000 |
okx summary has no reserve currencies |
internal-consistency |
1.0 |
PASS |
1.0000 |
|
address-ownership |
okx-1.1 |
PASS |
1.0000 |
verified 212313/212313 address signatures (59 Aptos resource accounts via authentication_key) |
onchain-balance-hot |
2.1 |
UNVERIFIABLE |
0.0000 |
RPC queries skipped (–skip-rpc) |
onchain-balance-token |
2.0 |
UNVERIFIABLE |
0.0000 |
RPC queries skipped (–skip-rpc) |
onchain-balance-ledger |
1.2 |
UNVERIFIABLE |
0.0000 |
RPC queries skipped (–skip-rpc) |
global-zk-proof |
okx-1 |
PASS |
1.0000 |
zkSTARKValidator verify-global succeeded; summary merkle root bound to zk proof |
btc-anchor |
0 |
UNVERIFIABLE |
0.0000 |
BTC block time anchor verifier not implemented |
third-party-attestation |
0 |
UNVERIFIABLE |
0.0000 |
No public third-party attestation report available |
cross-chain-wrapped |
0 |
UNVERIFIABLE |
0.0000 |
No per-row wrapped-asset metadata in public PoR artifacts (token contract, representation type e.g. WBTC/cbBTC, canonical asset, custody mode) |
6. Verifier Finding Details
This section explains FAIL, WARN, and
UNVERIFIABLE outcomes from the verification bundle.
Row-level UNVERIFIABLE entries often mean the verifier does
not yet support that (coin, network) pair, not that the exchange failed
the check. Full machine-readable output:
500375535.verification-bundle.v2.json in the local artifact
bundle.
Capability and
artifact gaps (UNVERIFIABLE)
| Verifier | Explanation |
|---|---|
onchain-balance-hot |
RPC queries skipped (–skip-rpc) |
onchain-balance-token |
RPC queries skipped (–skip-rpc) |
onchain-balance-ledger |
RPC queries skipped (–skip-rpc) |
btc-anchor |
BTC block time anchor verifier not implemented |
third-party-attestation |
No public third-party attestation report available |
cross-chain-wrapped |
No per-row wrapped-asset metadata in public PoR artifacts (token contract, representation type e.g. WBTC/cbBTC, canonical asset, custody mode) |
Row-level findings
solvency-claim
(FAIL)
Summary: okx summary has no reserve currencies
7. Minimal Checklist
| Requirement | Status | Notes |
|---|---|---|
| Has public PoR been published during the last 12 months? (S0-1) | pass |
Snapshot 500375535 is in the public evaluation set. |
| Is snapshot time explicit? (S0-2) | pass |
2026-08-10T16:00:00Z |
| Is there reserve summary or wallet_address_list? (S0-3) | pass |
Summary and wallet_address_list present. |
| Is wallet_address_list public and on-chain verifiable? (S1-1) | pass |
Wallet list present; on-chain replay skipped or incomplete. |
| Is wallet_ownership_proof public and batch-verifiable? (S1-2) | pass |
address-ownership verifier PASS. |
| Is global_proof public and independently reproducible? (S1-3) | pass |
global-zk-proof verifier PASS. |
| Is independent third-party review available with stated scope? (S1-4) | unverifiable |
third-party-attestation verifier UNVERIFIABLE. |
| If trusted setup is required, is transcript public; otherwise is the proof system transparent setup? (S1-5) | pass |
Plonky2 / zk-STARK uses transparent setup; no trusted setup ceremony required. |
| Is root/proof/vk canonically anchored outside exchange servers? (S2-1) | fail |
No official exchange canonical on-chain/DA anchor established. |
| Is publication frequency sufficient for Stage 2 (weekly full PoR / daily anchor)? (S2-2) | fail |
Monthly or slower cadence; does not meet Stage 2 frequency expectations. |
8. Recommendations
| Priority | Recommendation | Related Risk |
|---|---|---|
P1 |
Anchor root/proof/commitment on-chain or publish immutable DA/archive records. | NO_CANONICAL_ANCHOR |
P1 |
Add daily anchoring, weekly full PoR, or event-triggered updates to reduce timing risk. | HIGH_FREQUENCY_GAP |
9. Boundary
This report evaluates public PoR artifacts and reproducibility. It does not evaluate the exchange’s overall financial health, corporate governance, internal controls, off-chain assets, legal compliance, or complete off-balance-sheet liabilities.
Missing data must be marked as UNVERIFIABLE, not treated
as PASS.