Proofs
Every action is a Groth16 proof on BN254, written in Circom 2 and made in your browser (snarkjs, in a Web Worker in the browser). Solana verifies it through its native syscalls, sol_alt_bn128_group_op, sol_alt_bn128_compression, sol_poseidon, in under 200,000 compute units.
One transaction kind
The transact circuit takes up to 2 notes in and writes up to 3 out (recipient, change, relayer fee note), one asset and a signed public amount. It proves the inputs are in the Book at a recent root, that you know the spend key behind their owner key, that the nullifiers are derived correctly, and that inputs equal outputs plus the public amount.
Statements
The statement circuit takes up to 4 notes in and writes statement note and relayer fee note, with the mint and a threshold public.