Anomabeta

Your privacy-focused dApp system on Solana that enhances privacy and unlinkability between deposits and withdrawals.

Security Notice
  • • Your seed phrase is the ONLY way to recover your wallet
  • • Write it down on paper and store it securely offline
  • • Never share your seed phrase with anyone
  • • Anoma cannot recover your wallet if you lose your seed phrase

Import Wallet

Restore your Solana wallet using your 12 word seed phrase.

Security Notice
  • • Never share your seed phrase with anyone
  • • Make sure you're on the correct website
  • • Anoma will never ask for your seed phrase
  • • Your seed phrase is stored locally and encrypted
Separate each word with a space. Word order matters.

Anoma docs

Privacy-Shielded Cash on Solana

Overview

Anoma is a privacy-focused wallet system on Solana that enables users to securely deposit, manage, and withdraw SOL and SPL tokens while maintaining transaction privacy. Anoma prioritizes privacy and usability by abstracting on-chain complexity behind a shielded accounting layer, allowing users to interact with SOL and SPL tokens without directly exposing deposit–withdrawal linkages.

By combining rotating deposit addresses, automated fund transfers, and centralized balance management, Anoma enhances unlinkability between deposits and withdrawals while preserving accurate and efficient asset accounting.

Core Concepts

Shielded Notes

When assets are deposited into Anoma, they are abstracted into shielded notes within the platform. These notes represent a claim on deposited assets and are tracked internally rather than existing as on-chain tokens.

note = (asset_id, amount, r, memo)
record = H(note)

Each note contains an asset identifier, amount, and internal randomness for unlinkability. A deterministic function H(note) derives a unique internal record identifier used by Anoma’s off-chain ledger to track balances and enforce single-use withdrawals, decoupling on-chain deposits from withdrawal execution.

Records & Hashing

Each shielded note is represented internally as a record in Anoma’s ledger. Records are uniquely identified and are updated as deposits are consolidated and withdrawals occur. While records are not exposed on-chain, they provide a deterministic and auditable internal representation of user balances and platform state.

Spent Notes

When a note is used for a withdrawal, it is marked as spent within the system and cannot be reused. This enforces balance consistency and prevents double-withdrawals while keeping individual deposits unlinkable from withdrawals.

Withdrawal Verification

When withdrawing funds, the platform checks that:

  • The user has a sufficient balance associated with their account
  • The deposit record has not already been spent
  • The requested withdrawal amount plus any applicable SPL token fees can be covered
  • Inputs = Outputs + Fee

Once these checks pass, the platform processes the withdrawal, transferring funds from the main wallet to the user’s specified destination. This ensures that all withdrawals are valid while keeping individual deposit activity unlinkable from the user’s withdrawal.

Protocol Design

1. Deposit (u → p)

Users deposit SOL into a temporary rotating wallet assigned to their account. Once detected, the funds are automatically moved to the platform’s main wallet. A deposit record is created to track the amount, user ID, and deposit wallet. SPL tokens are deposited into the permanent SPL wallet to cover platform fees. This ensures deposits are separated from withdrawals, providing privacy and unlinkability.

2. Transfer (b → u)

Within the platform, all user balances are updated based on deposit and fee records. SOL and SPL tokens are stored in the main wallet while individual balances are tracked off-chain. This allows multiple users to interact with the platform simultaneously without revealing which deposits belong to which user. Internal records manage transfers, fees, and balance changes efficiently.

3. Withdraw (p → u)

When a user requests a withdrawal, the system verifies that the user’s balance is sufficient for the requested amount and any SPL token fees. Funds are then sent from the platform’s main wallet to the user’s specified Solana address. After completion, deposit records are marked as spent to prevent double withdrawals, ensuring balances remain accurate and user activity stays unlinkable.

Assets Supported

SOL
native SOL
$ACASH
native utility token
SPL Tokens
coming in v2

Relayer Network

Anoma is designed to support relay-style transaction submission, where user actions are abstracted from direct on-chain interaction. This further separates transaction origin from destination and enhances privacy.

Relaying behavior may evolve as the system matures.

Keys and Addresses

Spending Key (sk)

Internal authorization key used to validate note consumption and withdrawals

Viewing Key (vk)

Optional read-only access used to observe incoming activity and balances

Address (pkd)

Derived public address generated for deposits and withdrawals

Cryptography

Concept Implementation
Record System Off-chain deposit and withdrawal ledger
Hash Deterministic internal record ID H(note)
Wallet Curve Solana Ed25519 keypairs
Ledger Structure Sequential internal records with balance enforcement
Notes Shielded note abstraction (off-chain JSON records)
Randomness Used for deposit wallet rotation and transaction splitting

Token Utility — $ACASH

Fee Token

Users pay a withdrawal fee deducted from their internal balance, supporting platform operations while keeping every transaction simple, consistent, and fully controlled.

Governance

Anoma prioritizes usability and privacy through abstraction, trading direct on-chain interaction for a managed execution layer that enforces platform rules and accounting.

Staking

Future versions may introduce staking where service operators lock value, supporting reliability, automating transfers, and encouraging stable performance throughout the platform.

Burn Mechanism

A burn mechanism can remove part of collected fees, creating deflation, regulating overall liquidity, and maintaining long-term sustainability within the platform.

Loading

Loading your wallet...

Shielded Balance & private notes

Inactive

Deposit 10000 $ACASH to this address to activate your wallet.

Recent Activity

No transactions yet

Start by receiving SOL or $ACASH

Available Balance
0.000000 SOL
≈ $0.00 USD
The recipient's Solana wallet address
Max: 0.000000 SOL
SOL
Single-Use Address
Generating...
The system generates a new address on every page load.
Platform Fee ~0.005 SOL
Minimum SOL deposit, 0.05 SOL. Smaller deposits will not be credited.

Shielded Pool

Deposits automatically transfer to your private pool

Auto-Transfer

Funds are instantly swept to the pool

Your wallet data is stored locally on your device. Always keep a secure backup of your seed phrase.

Seed Phrase
Never share your seed phrase. Anyone with access to it can steal your funds.

Export Wallet

Download a backup file of your wallet

Delete Wallet

Permanently remove your wallet from this device. Make sure you have backed up your seed phrase.