Cryptos treats privacy as a spectrum rather than a single switch. Confidentiality at the execution level and a fully shielded transaction lane are built on the same validator set and the same wallet, so using one doesn't mean leaving the other behind. This architecture is under active development — it is not a claim about what is live on mainnet today.
Transactions sit in an encrypted mempool until the validator set, using threshold decryption, reveals them for execution — no single validator can read a pending transaction alone, and none are visible publicly before they land in a block.
Trusted execution environments back the threshold-decryption step as a baseline hardening layer, not an optional extra — the same protection applies whether or not a given transaction uses the shielded lane.
A fully private lane where balances are note commitments in a Merkle tree, spends are proven client-side with zero-knowledge circuits, and nullifiers prevent double-spending without ever revealing which note was spent. Viewing keys let a holder selectively disclose their own activity — to an auditor, for example — without exposing anyone else's.
Shielded notes don't appear as line items on the public ledger the way an EVM balance or a Cosmos bank transfer does. Spending a note consumes a nullifier instead of debiting a visible address, so an outside observer watching the chain cannot link a shielded spend back to the note it came from. The shielded lane also supports wrapped ERC-20 assets, so a token bridged in from another chain can move through the same private lane as native CRYPTOS.
Proof generation happens on the client, not on a validator — your wallet builds the zero-knowledge proof for a spend, mint, or swap locally, and the chain only ever verifies it. The circuits are written in Noir and verified with a Barretenberg-based prover (UltraHonk over the BN254 curve), with the verification keys fixed at genesis so a circuit can't be swapped out for a weaker one later without a coordinated upgrade.