ShieldFlow Documentation

Welcome to the ShieldFlow protocol documentation. Here you will find everything you need to understand, integrate, and build on top of ShieldFlow — from high-level architecture to smart contract internals and SDK usage.

Quick Links

Protocol Overview

ShieldFlow enables privacy-preserving blockchain transactions with built-in regulatory compliance through zero-knowledge proofs and Association Set Providers (ASPs). Users deposit funds into Privacy Pools, which store cryptographic commitments in a Merkle tree. When a user wants to withdraw, they generate a ZK proof that demonstrates they own a valid commitment — without revealing which one. The ASP layer ensures that only compliant deposits are eligible for standard withdrawals, satisfying regulatory requirements while preserving user privacy.

Supported Chains

Ethereum

Key Concepts

Privacy Pools

Smart contract pools that hold deposited assets as cryptographic commitments in a Merkle tree. Deposits are public, but withdrawals use zero-knowledge proofs to hide the link between depositor and recipient.

Zero-Knowledge Proofs

Groth16 proofs generated client-side that prove a withdrawal is valid (the commitment exists in the tree and the caller knows the secret) without revealing which commitment is being spent.

ASP (Association Set Provider)

Off-chain compliance services that monitor deposits, run sanctions and risk checks via Nominis deep wallet screening, and post approved association sets on-chain. Only deposits approved by the ASP can be included in a standard withdrawal proof.

Ragequit

An emergency exit mechanism that allows any depositor to withdraw their funds directly, bypassing the ASP and relayer. It sacrifices privacy (the on-chain link between deposit and withdrawal becomes visible) but guarantees non-custodial access to funds at all times.