Why is Proof of Reserves important?
As a cryptocurrency exchange, OKX understands that the safety and security of customer assets are top priorities. We ensure our balance sheet always holds enough assets with a 1:1 reserve ratio, giving us a longstanding reputation for best-in-class security and liquidity.
Our on-chain wallet holdings are also public, allowing you to easily confirm that customer deposits are backed 1:1 by real digital assets.
Our commitment to a 1:1 reserve ratio and monthly Proof of Reserves reports sets a high standard for the crypto industry, demonstrating our dedication to preventing the insolvency of our platform and the accuracy of our customer funds and net balances. This is critical for building trust with regulators and fostering a healthy and sustainable crypto ecosystem.
What is Proof of Reserves?
This cryptographic attestation demonstrates that a crypto exchange holds a specific amount of assets on its blockchain at a particular time, providing transparency of aggregate account balances or the total sum of deposits on the exchange. This is achieved without revealing any sensitive information about individual account balances. PoR is a critical component of the crypto ecosystem.
Assets considered reserves are cryptocurrencies offering strong liquidity and market acceptance. OKX offers reserve reports for 22 coins, including , , and stablecoins, such as , .
How does our Proof of Reserves work?
We use a transparent Zero-knowledge proof algorithm, zk-STARK, to prove and verify all OKX account assets held on our exchange.
We verify our ownership of OKX on-chain wallet addresses and the total OKX wallet holdings.
Finally, we verify our reserve ratio by comparing total OKX account assets with total exchange assets from our on-chain wallet addresses.
What is zk-STARK?
How OKX uses zk-STARK to verify your assets
We take a snapshot of each user's asset balance and input this data into a trace table and an encrypted Merkle tree system. This creates a tamper-proof record, which can be used to verify the accuracy of the balances.
We set three rules or "constraints" that our account asset balances must satisfy. If each constraint is tested and proven true, it confirms the truth of the claims OKX is making.
Rule 1: Total Balance Constraint
The total account asset holdings that OKX claims to hold is the sum of every account's total asset balance.
Rule 2: Non-negative Constraint
Every account’s total balance is more than zero, and their assets are accounted for, covering their liabilities and ensuring that each account has positive net equity. This is crucial in maintaining the solvency of a crypto exchange.
Rule 3: Inclusion Constraint
Every account’s total balance is included in the calculation and verification process.
How to verify the ownership of OKX's wallet address and assets
To verify our ownership, you can utilize either third-party or open-source “” tools provided by OKX.
How to verify the OKX reserve ratio
To verify OKX's reserve ratio, compare the total assets held in OKX's on-chain wallets to the total account assets from the Merkle root.
If our total on-chain asset balance equals or exceeds the total account asset balance, the reserve ratio will confirm that OKX has Proof of Reserves.
Note: The report is a snapshot of our OKX account asset balances at the time of the data capture. Any tokens outside of the scope or subsequent transactions made after the snapshot are not included.
How to perform self-verification of Proof of Reserves?
Verify the inclusion constraint
Report period: September, 2024 onwards
- To verify if your asset balance has been included as a Merkle leaf, navigate to “” and click Details to access your report data.
Get the data you need for verification by clicking Copy data and pasting the string as a file in a new folder. The file must end with the name “_inclusion_proof.json.”
- Download , the OKX open-source verification tool, and save it to the same folder containing the JSON file.
Open zk-STARK Validator to auto-run the JSON file you saved.
If the verification is successful, the following message is shown:
"Inclusion constraint validation passed"
If the verification fails, the following message is shown:
"Inclusion constraint validation failed"
Access our Merkle tree v2 from 03/16/2023
Access our zk-STARK from 22 Apr, 2023 to 8 Aug, 2024
Verify the total balance and non-negative constraints
To verify whether the assets OKX claims to hold are true and that no account has negative assets, follow these steps:
- Under “” download the zk-STARK file from the “Liability report” tab.
Unzip the file to reveal a "sum_proof_data.json" file.
- Download , the OKX open-source verification tool, and place it in the same root folder as the "sum_proof_data.json" file.
Open zk-STARK Validator to auto-run the unzipped zk-STARK file.
If the verification is successful, the following message is shown:
“Total sum and non-negative constraint validation passed”
If the verification fails, the following message is shown:
“Total sum and non-negative constraint validation failed”
Verify OKX wallet address ownership and balance
If you want to verify the ownership of your OKX wallet address and check its balance, compare it against our publicized list of crypto wallet addresses.
OKX will share the crypto type, amount, and signature. In addition, a signed "I am an OKX address" message with the corresponding private key will also be shared.
Using Bitcoin (BTC) as an example, the following steps are how users can verify ownership of their BTC wallet address and balance:
- Download the publicly available wallet address information under "."
- Next, download OKX's open-source verification tools from to start the verification process.
Open the downloaded wallet address information file and copy the highlighted information as shown in the image below. The BTC address, signatures, and message must be copied separately.
- Paste the information into a third-party signature verification tool or OKX's tool to verify the address and signature.
If the verification passes, it confirms that OKX owns the address. - Using the tool, verify the balance of the OKX wallet address by comparing it against the corresponding block height snapshot.