Who sees what
On the device
The signing keys never leave the device, nor does the seed they come from, except sealed. The balances, activity and notes the wallet has read are kept sealed under a key from the wallet's root.
Services
| Who | Is sent | Can learn |
|---|---|---|
| Proving service | The action, its signature, the account's address and viewing key | The account's private balance and history. It can't spend. |
| Relayer | The action's size, then the proven action | Nothing beyond what the chain shows once it is sent. |
| Indexer | The account's address, and which parts of the pool are read | The account's public activity. With no key, it can't tell which notes are the account's. |
| Starknet node | Reads and public transactions | Which addresses are read. |
| Passkey vault | The sealed seed | Nothing: it can't open the seed. |
| Ekubo | A swap's tokens and amount | Not the account. |
| Starknet Foundation's prover | A deposit's proving request, viewing key included | The same as the proving service, for accounts that shield. |
Every service sees the IP address requests come from.
On chain
| Action | What is public |
|---|---|
| Private payment | That the pool was used. Not who sent it, the amount or the token. |
| Private swap | The swap itself, made by a helper contract. Not who swapped. |
| Withdrawal | The address it goes to, the token and the amount. The sender is encrypted for the auditor. |
| Setting up | That the account uses the pool. |
| Shielding | The account, the token and the amount it moves in. |
Setting up, shielding and withdrawing in quick succession can link them. See STRK20 by Example's known privacy limitations.
The auditor
STRK20 is private from the public, not from lawful oversight. […] When a user registers (
SetViewingKey), their private viewing key is encrypted to the auditor's public key […] and stored on-chain. […] Disclosure is selective: the auditor decrypts only the viewing keys of users subject to a lawful request.
Outis doesn't hold the auditor's key, and has no part in disclosure.