Skip to main content
Opaque is a cross-chain privacy stack for unlinkable payments and zero-knowledge reputation. Configure one client (@opaquecash/opaque) and integrate stealth sends, PSR attestations, inbox scanning, and Groth16 proofs without touching chain-specific libraries directly.

Quickstart

Install the SDK, derive keys, and run your first flow in five minutes.

OpaqueClient reference

Full API for the unified client: stealth, PSR, reputation, and UAB.

Create a schema

Register a PSR schema and issue attestations on Ethereum or Solana.

Scan and sweep

Discover owned stealth outputs across chains and move funds to a fresh address.

What you can build

Architecture at a glance

Supported networks (testnet)

Starknet Sepolia is the newest chain and ships at testnet-preview maturity. It participates as a native stealth + scan chain with on-chain PSR proof verification and gating (PsrGate) — schema issuance and Wormhole (UAB) relay stay on Ethereum and Solana. See Starknet for the full flow and caveats.
Contract addresses ship inside the SDK (see Deployments). Override any address via OpaqueClient.create({ contracts: { ... } }).

Packages

Most apps only need @opaquecash/opaque (plus @opaquecash/react for React apps). Contract addresses and program ids ship in the generated @opaquecash/deployments registry. Lower-level packages (stealth-chain, psr-core, uab, etc.) are re-exported when you need a narrow surface. See Installation.