Starknet's Shadow Accounts Hide the Wallet Link, Not the Activity
StarkWare switched on Shadow Accounts for Starknet on Oct. 13, giving every app the option of a separate, persistent on-chain identity that is not publicly tied to a user's main wallet.
What it actually hides
The name oversells it slightly. A shadow account holds public ERC-20 funds, so its balances, contract calls and positions stay visible on-chain exactly like any other address — what gets cut is the link back to the wallet that controls it. The developer docs describe it as a persistent, app-specific pseudonym rather than an invisible account. Each nonce derives a distinct identity for the same app, which lets a user keep one set of activity apart from another.
How apps plug in
Developers keep writing normal contract calls and route them through shadow_account_invoke; the wallet handles private state, proof generation and submission, and the app never receives the user's viewing key. The identity itself carries no signing keys — only the ShadowAccountAnonymizer contract can push transactions through it. One transaction has a single invoke slot, so this route and the older helper-contract route cannot be mixed: helpers fit one-shot swaps, while shadow accounts fit positions that stay open.
The wallet is the catch
Starknet.js 10.8.0 ships Wallet API 0.10.4, but none of that matters without a connected wallet that supports the shadow-specific methods. Ready and Xverse back the wider STRK20 wallet API, yet the launch material does not say which releases cover Shadow Accounts, and the documentation tells builders to detect capabilities before offering the option. A mainnet demo built on Vesu's Prime STRK vault is labelled educational software, not an audited production app.
Why it matters
This is the piece STRK20 was missing. The privacy pool holds deposits as encrypted notes and every private transfer carries a zero-knowledge STARK proof that confirms value was conserved without revealing sender, receiver or amount — but a pooled balance cannot hold a position over time. A stable pseudonymous caller can, which is what makes rewards, lending and staking under an unlinked address practical. The disclosure path still exists though: an auditor acting under lawful process can recover a viewing key and decrypt that user's history.