This guide explains how to validate OKX's ownership of wallet addresses and their balances using publicly available Proof of Reserves (PoR) snapshots and open-source verification tools.
Prerequisites for Verification
Download Tools:
OKX Proof of Reserves Verification Tool (contains two utilities):
VerifyAddress: Validates address ownership.CheckBalance: Validates address balances (requires RPC/node configuration).
Download PoR Snapshot:
- Obtain the latest Proof of Reserves file.
Organize Files:
- Store both the PoR snapshot and verification tools in the same folder.
Choose Verification Type:
- Follow either the Ownership Verification or Balance Verification section below.
Verifying Ownership of OKX Reserve Addresses
OKX's PoR snapshots include addresses, signed messages ("I am an OKX address"), and signatures. Below are the verification methods:
1. BTC Wallets (Single-Sig & Multi-Sig)
- Multi-Sig (2/3):
Each address includes two signatures from OKX-held private keys. Validating both confirms ownership. - Single-Sig:
Verify via message and signature pairs.
2. ETH/USDT (EVM & TRX Chains)
- Use message-signature pairs to confirm ownership.
👉 Learn more about blockchain verification
Method 1: Using OKX’s Verification Tool
Open Terminal:
- Mac:
Terminal| Windows:CMD.
- Mac:
Navigate to Tool Directory:
cd ~/Downloads/proof-of-reservesRun Command:
Mac:
./VerifyAddress --por_csv_filename=okx_por_20221122.csvWindows:
VerifyAddress.exe --por_csv_filename=okx_por_20221122.csv
- Result:
Success returns:Verify address signature end, all address passed.
Method 2: Third-Party Tools
For BTC/EVM/TRX addresses:
- Copy an address, message, and signature from the PoR file.
- Use platforms like Blockchain.com Explorer or Etherscan to verify.
Verifying Balances of OKX Reserve Addresses
General Steps
- Compare on-chain balances at the snapshot height with OKX’s PoR file.
- Use RPC nodes or OKLink API for queries.
BTC Balance Verification
Step 1: Configure Bitcoin Node
- Sync Bitcoin Core to the snapshot height (may take 12+ hours).
Roll back to the snapshot block:
./bitcoin-cli invalidateblock [blockhash]
Step 2: Verify Balances
Single Address:
./CheckBalance --mode="single_address" --coin_name="btc" --address="3A1JRKqfGGxoq2qSHLv85u4zn935VR9ToL" --por_csv_filename=okx_por_20221122.csvTotal BTC Balance:
./CheckBalance --mode="single_coin_total_balance" --coin_name="btc" --por_csv_filename=okx_por_20221122.csv
ETH/USDT Balance Verification
Using Default RPC
Run commands similar to BTC verification, replacing coin_name (e.g., eth, usdt-erc20).
Using OKLink API
- Generate an API key via OKLink.
- Update
rpc.jsonwith API credentials.
👉 Explore advanced verification options
FAQs
1. Why verify OKX’s reserves?
Proof of Reserves ensures transparency by confirming OKX holds sufficient assets to back user balances.
2. What if verification fails?
Double-check RPC configurations or API keys. Contact OKX support if inconsistencies persist.
3. Can I use Infura/Alchemy nodes?
Yes! Configure rpc.json with third-party RPC endpoints for EVM chains.
4. How often does OKX update PoR files?
Snapshots are published periodically—check OKX’s official PoR page.
Conclusion
This guide equips you to independently validate OKX’s wallet ownership and balances, reinforcing trust in their reserves. For further queries, refer to OKX’s documentation or community forums.