đź’»
Developer Guide
  • Wallet SDK
    • Wallet Overview
    • Getting Started
      • 1. Start the RAILGUN Privacy Engine
      • 2. Build a persistent store for artifact downloads
      • 3. Load a Groth16 prover for each platform
      • 4. Add networks and RPC providers
      • 5. Set up a debug logger
    • Private Wallets
      • RAILGUN Wallets
      • View-Only Wallets
      • Encryption Keys
    • Private Balances
      • Balance and Sync Callbacks
      • Updating Balances
      • QuickSync
    • Transactions
      • Shielding
        • Shield ERC-20 tokens
        • Shield base token
        • Shield NFTs
      • Private Transfers
        • Private ERC-20 Transfers
        • Private NFT Transfers
      • Cross-Contract Calls
      • Unshielding
        • Unshield ERC-20 tokens
        • Unshield base token
        • Unshield NFTs
      • UX: Private Transactions
    • Broadcasters
  • Cookbook SDK
    • Cookbook Overview
    • Recipe Guide: Write a zkApp
      • "Step" — A smart contract call
      • "Recipe" — Steps in series
      • "Combo Meal" — 2+ Recipes
    • Use your zkApp privately
  • Engine SDK
    • Engine Overview
  • ZK Account Abstraction
    • Account Abstraction Overview
    • Getting started with the contracts
    • Wallets
    • State Structure
    • Example Primitives
Powered by GitBook
On this page
  1. Wallet SDK
  2. Transactions

Private Transfers

PreviousShield NFTsNextPrivate ERC-20 Transfers

Last updated 10 months ago

Private Transfers require you to "Generate Proof" and, optionally, make use of "Relayers": See

Transfers are encrypted “send” transactions, executed anonymously through the RAILGUN Privacy System. In a single transaction, a user can transfer multiple ERC-20 tokens privately to any other RAILGUN wallet.

Like all private RAILGUN transactions, transfers are typically executed through a Relayer, which guarantees the anonymity of both the sender and receiving wallets.

Memos

Transfers have an optional memo field which can contain text and emojis. This field is encrypted with the note’s ephemeral keys and therefore can only be decrypted by the sender and receiver.

There is no maximum length on the memo field, but as the memo is stored (encrypted) on-chain, its length will impact the amount of gas used in the transaction.

UX for Private Transactions