Get started
Connect a wallet
Open the app. On the Account page, choose your wallet from the list of wallets installed in this browser. Hindsight finds them through Wallet Standard: browser extensions and the in-app browsers of mobile wallets such as Phantom, Solflare and Backpack. A wallet appears enabled when it can sign v1 transactions on the network the service runs on; one that can't yet is listed with that note.
Your wallet signs two kinds of things for Hindsight:
- A sign-in message, once per session. It is a one-use challenge from the service, bound to this site, the network, the program and an expiry. Signing it moves no funds; it lets the service show you your own inbox and notifications.
- Transactions: registering your key, opening your account, deposits, transfers, accepts, returns and withdrawals. Each one is shown by your wallet before you approve it.
Set up your account
The Account page shows two steps; Register and open does both.
- Register your key. Your browser creates an X-Wing key pair (X25519 + ML-KEM-768). Its 1,216-byte public key goes on chain in a key record, so payers can seal envelopes to you. The private half never leaves this device.
- Open your confidential account in the pool. The account holds your balance as a commitment and an encrypted record of its opening that only your device can read.
Both are one-time steps per wallet (a new key epoch registers a new key).
Keys on this device
Two keys live in your browser, not in your wallet: the X-Wing key that payments to you are sealed to, and the key that encrypts your own balance record. Without them, this device can't open your notes or read your balance.
To use your account on another device, or to keep a copy, download a backup from the Account page. The backup file is encrypted with a passphrase you choose (PBKDF2-SHA256 with 600,000 iterations, then AES-256-GCM). On the other device, connect the same wallet, enter the passphrase and choose Restore from a backup.
Keep the backup file and the passphrase in different places.
The network
The service runs on one Solana cluster and one pool. The app's bar shows the cluster and your key epoch; the fees page shows the pool's current policy, read from the chain.
When the service runs on devnet, its USDC is Circle's devnet USDC: get some from Circle's faucet, and devnet SOL for fees from Solana's faucet. On mainnet, it is native USDC.