Skip to main content

Confidential Transfers (fhERC‑20)

Confidential transfers keep amounts private while preserving ERC‑20 semantics. The sender encrypts locally, a coprocessor returns a proof, and the chain updates ciphertext balances without learning the amount. The recipient detects and decrypts locally.

Transfer flow

Confidential transfer sequence

What the chain sees

  • Ciphertexts and proofs only—no plaintext amounts or balances.
  • Policy enforcement (allowlists, limits, pause) at the wrapper/token layer.

Wallet integration

  • Local encryption & decryption via SDK.
  • View‑key support for scoped compliance visibility (grants are logged & revocable).

Failure modes (examples)

  • Invalid proof → transaction reverts (no state change).
  • Policy violation (e.g., non‑allowlisted recipient) → transaction reverts.