Your USDC becomes cUSDC, a confidential token on Solana, one to one. The balance is encrypted with keys derived from your passkey. Withdraw and it is USDC again.
USDC in
Send USDC to your passkey wallet on Solana, then deposit. The deposit is public, like any USDC transfer.
cUSDC, 1:1
The vault mints a confidential token backed by the reserve. Supply and reserve are both public and always match.
Encrypted balance
Your balance and every transfer amount are encrypted with keys from your passkey. Memos are encrypted end to end.
USDC out
Withdraw to any address that already holds USDC. Your device builds the proof; the amount becomes public at the edge.
| Action | Amount | Parties | Link between them |
|---|---|---|---|
| Deposit | public | public | public |
| Transfer between Keshi users | visible | visible | |
| Stealth transfer | one-time addresses | ||
| Withdrawal | public | public | public |
| Balance | — | — |
One passkey, every key
Signing in with your passkey derives the Solana wallet, the encryption keys, agent keys and view keys. Keshi stores none of them.
Zero-knowledge proofs, plainly
Your device proves you have enough without showing how much. Solana checks the proof and moves the encrypted balance. It takes one to three seconds on a laptop.