privacy protocol logo
Skip to Content
Cloak SDKOverview

Cloak SDK

Cloak lets you add anonymous transactions to any dapp without writing a circuit, deploying a contract, or running infrastructure. It is a privacy-pools layer: users deposit funds under a commitment, then forward transactions, withdraw, or claim returned funds through zero-knowledge proofs relayed on their behalf — so the on-chain trail never links back to them.

Install a TypeScript package, call a few functions (or React hooks), and your users transact privately against contracts that are already deployed.

What it gives you

  • Anonymous sends — forward an arbitrary transaction (target + calldata + value) to any contract, executed by an ephemeral proxy instead of the user’s address.
  • Private withdrawals — move funds to a fresh address with no visible link to the deposit.
  • Claimable returns — funds a call sends back are captured into a note only the user can withdraw.
  • Gas sponsorship — a relayer submits every spend, so the user never signs the on-chain transaction that would deanonymize them.
  • No contracts to write or deploy — the pool, verifier, proxy factory, and relayer already exist; you integrate the SDK.

The pieces

LayerTechnologyRole
CircuitNoir (UltraHonk)Proves note ownership, nullifier, amount conservation, and binds the intent
ContractsSolidity (Foundry)CloakPool (pool + proxy factory), generated Honk verifier, CloakProxy
RelayerRust (axum + alloy)Submits spends and sponsors gas; cannot redirect or inflate fees
SDKTypeScript (viem + wagmi)Proving, note management, and the developer-facing API

Supported now

  • Sepolia testnet, native ETH and ERC-20 tokens.
  • Arbitrary deposit/spend amounts.

Next steps

Last updated on