Skip to main content
A tokenized asset is only as trustworthy as your ability to check it. IX RWA is built so the value backing IX-CORE is not something you take on faith: every change to NAV passes through a recorded, on-chain attestation, and the hardware behind each asset is anchored to a hash you can recompute.

The gate: no NAV move without an attestation

The NAV oracle’s ORACLE_UPDATER_ROLE is assigned to the Attestor Registry. Once the direct-EOA write is revoked — a pre-mainnet lockdown step — there is exactly one path to move NAV: Because the registry is the writer, every reserve value on record carries who attested it, what evidence backs it (evidenceHash), and when.
On testnet the direct-EOA oracle write has not yet been revoked, so treat the gate as the target end-state; on mainnet real attestors are added and every EOA path is revoked. See Security model.

What an attestation contains

Read the latest attestation for any cohort with latest(cohortId), and check recency with isFresh(cohortId, maxAge).

Verify reserves yourself

1

Read the attestation

Call latest(cohortId) on the Attestor Registry to get valueUSD, evidenceHash, attestor, and at.
2

Check it's fresh

Confirm isFresh(cohortId, maxAge) is true — a stale feed also trips the vault’s own staleness guard and blocks pricing.
3

Match the evidence

Retrieve the off-chain evidence bundle and recompute its keccak256; it must equal the on-chain evidenceHash.
4

Recompute NAV

Cross-check the attested cohort values against hardwareValueUSD() and rebuild NAV-per-share as totalAssets ÷ totalSupply. See Transparency & NAV.

Verify hardware identity

Each asset can anchor a hardware identity: identityHash = keccak256 of the canonical bundle (machine id, host id, motherboard, geolocation, and per-GPU serials), plus GPU model and serial count. Call identityOf(assetId) on the Asset Registry, re-hash the off-chain bundle, and confirm the two match — proof that the anchored machine is the one backing the asset.

Honest boundary

The Attestor Registry enforces the process, not the truth of the evidence. On-chain, it guarantees that NAV only moved through a recorded attestation with an evidence hash and bounded, staleness-checked values. Genuinely independent proof-of-reserve additionally requires a real third-party attestor holding ATTESTOR_ROLE and a real evidence pack behind each hash. On testnet the attestor is the EconomicsFeeder key; at mainnet, real attestors are added and the direct-EOA write is revoked — the same code, a different signer. See the roadmap.