Solana Privacy Rings: what happens to your old token accounts

November 12, 2026 • By SolPurge Team

On November 10, 2026, Helius launched Solana Privacy Rings on mainnet. The Solana Foundation announcement calls them a permissionless privacy protocol with execution and settlement on Solana. Users deposit SOL and SPL tokens into a private balance, send private transfers, and withdraw back to a public balance. The same post says products are already shipping on it: confidential transfers in Decrypt's money account, confidential transfers in Ore's mining and staking app, and cross-chain delivery into a confidential balance through Aurora Intents.

This note is what that deposit does to the public token account you already have. The announcement does not say the account is emptied or closed. The Helius docs and the published program describe a narrower step: the deposit moves a chosen amount into an escrow, and the public account stays open.

What the permissionless ring encrypts

The ring that launched on November 10 is the permissionless one. The announcement says assets and amounts are encrypted, wallet addresses stay visible, and only the user can decrypt balances with a viewing key. Private balances stay on Solana mainnet, beside the same public liquidity.

Helius's overview uses the same split. Confidentiality encrypts the asset and the amount. Anonymity, which also encrypts the sender and the recipient, is a setting for Custom Rings. The announcement says Custom Rings were in audit and expected on mainnet in the coming weeks as of November 10. They are a later release.

Three properties in the announcement matter for a wallet. Every transaction needs the owner's signature. The ring supports SOL, SPL tokens, and Token-2022 tokens. Proofs are checked on Solana, and the announcement says that verification takes a few hundred milliseconds. Certora, OtterSec, and ZK Security audited the core programs and the ZK circuits. Engineers from the Solana Foundation, Blueshift, and Zcash took part in the trusted setup. Formal verification was still underway, with completion expected by the end of 2026.

The announcement also names Range, Chainalysis, and Elliptic for wallet screening. It says Crossmint, MoonPay, and Paybis are building confidential onramps, and that Backpack, DFlow, Jupiter, Squads, Titan, and other teams are integrating Privacy Rings.

The program address is ring1GaLCuJnkUMVkX2JeZLTTX17wKsV4fZmPVzXANW on mainnet and devnet. The same page lists the state Merkle tree 777pvSGe5LaBd9nCczvE2FXEauiwtfGJ5XRpjKyniGor and the native SOL interface CiNmas621VuyofiDSrEPfTXHKrdZuB6jMKECyNiMpLXE. Solscan shows the program account.

A private balance is a UTXO

Helius's UTXO guide stores a private balance as unspent outputs in a shared Merkle tree. It says a UTXO is not a Solana account, so it needs no rent-exemption, and its balance is encrypted. The wallet shows one balance per asset. That balance is the sum of the UTXOs you can spend.

The public token account for the same mint is a separate account. Creating a token account locks a refundable rent deposit in it. Solana rent exemption is that deposit. The private UTXO does not hold it.

The published deposit moves public tokens with a token transfer into an escrow, then records the private amount as a new UTXO. The user's public token account stays a public token account. Token-2022 can be the token program for that transfer. The encrypted balance is the UTXO in the Solana Privacy Program. Architecture says you read that balance with dedicated indexer RPC methods. getAccountInfo returns Solana accounts, and a UTXO is not one.

What a deposit changes

The deposit guide says a deposit moves tokens from a public Solana balance into a private balance, in one transaction, to a Solana wallet address. The asset, the amount, the sender, and the recipient are public. The resulting private balance is encrypted. A deposit does not request a ZK proof. The owner signs. The Helius Privacy Rings page says the source token account stays public because the funds move from a normal Solana wallet.

For SOL, the published program moves lamports from the signing wallet to the SOL interface account. The wallet is the source. Depositing SOL spends part of the wallet balance. It leaves the wallet open.

For an SPL or Token-2022 mint, the program moves a chosen amount from the user's token account to a per-mint interface account. Architecture calls that interface an escrow: one per mint, created once, owned by the Solana Privacy Program. The deposit creates a UTXO whose owner is the recipient. The published settlement performs that move with the token program's TransferChecked instruction for the amount in the deposit. The instruction returns after the transfer. It does not close the user's token account.

If that mint has no interface yet, the deposit guide says the first deposit can create it in the same transaction, and the creator pays the account rent. That rent funds the shared escrow. Closing your own token account does not return it.

A withdrawal releases the amount you withdraw. Architecture says the spent UTXOs are marked spent and the tokens are released to a public Solana token account. The withdraw guide says the asset, the amount, and the resulting public balance are public, and the remaining private balance stays encrypted.

The public account stays open

The public token account is still there after the deposit. It still holds the rent deposit that opened it. The deposit moved the amount in that instruction into the escrow. Helius does not document that amount as the full token balance, and neither the announcement nor the deposit guide says the token balance goes to zero.

The amount is the one you deposit. A smaller amount leaves a public token balance in that account, together with the rent. Why empty token accounts accumulate is a different situation: a public balance that is already zero, with the rent still locked. The sources above do not show a Privacy Rings deposit producing that situation.

The shared interface is a different account again. It holds the deposited tokens for the mint. Its owner is the program. Closing it is not a personal rent claim.

The UTXO guide describes one rent return, and it belongs to the protocol. Spending a UTXO creates a temporary nullifier account. The Forester later records that nullifier, closes the account, and reclaims the rent. Architecture also charges a tree fee: 5,000 lamports by default for each state Merkle tree an instruction updates, on top of the network fee. Each tree can set its own fee. That fee is a protocol charge.

Public accounts that are already empty

You claim SOL by closing a public token account whose token balance is already zero. How to claim SOL from empty token accounts is that close. Closing a token account deletes the account and sends its lamports, including the storage deposit, to a destination you choose. The token balance has to be zero first. Wrapped SOL is the exception in that guide: the account can be closed with a balance so the underlying SOL comes back.

SolPurge closes empty SPL Token and Token-2022 accounts in a wallet you connect and sign. It does not burn tokens. Only a zero balance is closed. A native wrapped SOL account is the exception: closing it unwraps the SOL. The 6% service fee is on the reclaimed rent only, not on the unwrapped SOL. When a referral is used, half of that fee goes to the affiliate. The network fee for the close is separate.

SolPurge does not run WithdrawExcessLamports. That instruction leaves the account open and withdraws only a surplus above the rent minimum.

A Privacy Rings deposit is a separate step from that close. The private balance is a UTXO, so it does not appear in a token-account list. The interface escrow is the program's account. A public token account that still holds tokens stays open. SolPurge also leaves these accounts in place: a frozen account, an account whose close authority is another wallet, a Token-2022 account with withheld fees, and a token account that holds a confidential balance. The app shows the reason.

To look at the public accounts on an address, the wallet checker lists its token accounts, and the rent reclaim estimator estimates what that address would receive after fees. Those tools read public token accounts. They do not read private UTXOs.

Sources

Find & Claim Your Locked SOL

Unused accounts may be holding your SOL. Scan your wallet now and reclaim your funds easily.