Proof of Reserve
What this page helps you do
Use this page to:
Check the published CBTC Proof of Reserve data.
Understand how the reserve total can be calculated independently from Bitcoin data.
Identify what the evidence proves and what it does not prove.
Stop safely when data is stale, incomplete, or inconsistent.
The reserve claim
CBTC is designed as a Bitcoin-backed asset on Canton Network. The reserve claim is that confirmed Bitcoin reserves cover circulating CBTC on a 1:1 basis.
Use the maintained circulating-supply source, coverage formula, feed denomination, and freshness policy when evaluating the 1:1 reserve claim.
Check the Chainlink feed
Open the CBTC / POR Data Stream. Chainlink currently identifies it as:
Product type: Proof of Reserve
Base asset:
CBTC_CRMarket hours: 24/7/365
Product name:
CBTC/POR-Datalink-ProofOfReserves-DS-Premium-Global-009
To perform a reserve check:
Confirm that you opened the CBTC Proof of Reserve product, not a CBTC or BTC price feed.
Record the reported reserve value and its observation time.
Check the feed's freshness against the approved maximum age.
Obtain circulating CBTC supply from the canonical supply source.
Compare the reserve value with circulating supply using the approved coverage formula.
Save the value, observation time, supply value, supply timestamp, and source links with your review record.
Expected outcome: the feed is current and the calculated reserve coverage meets the approved threshold.
If the feed is stale or coverage falls below the applicable threshold, stop and follow the support and incident path in Security and trust index.
How the reserve total is calculated
BitSafe's open-source CBTC Proof of Reserve tools document an independent calculation path. This draft was reviewed at commit 90496260bc916e482a5539821fdd3070473f0ab8, dated 5 July 2026.
At that commit, the calculator:
Fetches deposit account IDs and threshold extended public keys from the address-calculation endpoint.
Derives each Bitcoin Taproot address independently from the deposit account ID and threshold public key.
Compares each derived address with the address reported by the endpoint.
Queries a Bitcoin data source for unspent transaction outputs at every verified address.
Sums eligible unspent outputs to produce a Bitcoin reserve total.
Fails without a reserve total if an address cannot be verified or an on-chain lookup remains incomplete after retries.
The address-calculation endpoint supplies inputs for derivation. It is not the source of Bitcoin balances. The calculator obtains balances from Bitcoin data through an Esplora-compatible service.
At the reviewed commit, the calculator counts outputs with six or more confirmations when current block height is available. Check the maintained release reference for the production confirmation policy.
Run an independent calculation
The calculator uses these defaults at the reviewed commit:
Address-calculation data:
https://api.mainnet.bitsafe.finance/cbtc/v1/address-calculation-dataBitcoin data:
https://blockstream.info/api
You can set ADDRESS_CALCULATION_DATA_URL or ESPLORA_API to use approved alternatives. For higher assurance, compare results from two independent Bitcoin data sources or use your own Bitcoin node and compatible indexer.
Expected outcome: every address is derived and verified, every Bitcoin lookup completes, and the tool reports one complete reserve total.
Stop and investigate if:
A derived address does not match the reported address.
Any deposit account cannot be processed.
A Bitcoin lookup remains unavailable after retries.
The tool exits without a complete reserve total.
Independent Bitcoin data sources disagree.
What this evidence proves
When the inputs are complete and current, the calculation can show:
Which Bitcoin addresses are deterministically associated with the published deposit account IDs and threshold public keys.
The confirmed Bitcoin unspent outputs held at those derived addresses at the observation time.
The summed Bitcoin reserve amount produced from those outputs.
Whether the observed reserve amount is consistent with the 1:1 claim after comparison with an authoritative circulating-supply value.
What this evidence does not prove
Proof of Reserve is one control. It does not, by itself, prove:
The circulating CBTC supply or total liabilities. That requires a separate authoritative supply source.
That every deposit account and threshold public key supplied to the calculation is complete. The completeness and publication mechanism require Engineering confirmation.
Future reserve coverage. The result is valid only for its observation time and data freshness.
That redemption will complete within a specific time or at a specific cost.
That contracts, signing software, operators, APIs, or operational processes are free of defects.
Whether the Chainlink feed is used as an automatic minting control, circuit breaker, or redemption control for CBTC.
That one Bitcoin data provider is correct. High-assurance checks should compare independent sources.
Handle stale, missing, or inconsistent data
Do not interpret missing data as a zero balance.
Do not treat a stale observation as current reserve evidence.
Do not publish a partial reserve total when any address or Bitcoin lookup failed.
Record the feed value and timestamp before escalating.
Re-run the independent calculation with a second approved Bitcoin data source.
Escalate through the approved support and incident path if the feed is stale, reserve coverage is below the approved threshold, or independent sources disagree.
Use the maintained security and support references for the current freshness threshold, severity levels, contact, incident path, and retry interval.
Technical sources
Current CBTC Data and Price Feeds page, used only as a merge target and link inventory
Related pages
Next step
👉 Put the evidence in context: Security and trust index.
Last updated