Skip to main content
Creates your on-chain Umbra identity. Registration is required before depositing, withdrawing, or using the mixer. It performs up to three on-chain transactions in order:
  1. Account initialization — creates your EncryptedUserAccount PDA on-chain.
  2. X25519 key registration — stores your encryption public key, enabling encrypted balance (Shared mode) and deposits from others.
  3. User commitment registration — registers your Poseidon commitment via a ZK proof, enabling the mixer and anonymous transfers.
Registration is idempotent. Each run checks which steps are already complete on-chain and skips them. If a previous run was interrupted, re-running will pick up where it left off.

Options

FlagDefaultDescription
--confidentialtrueRegister the X25519 key for encrypted balance support
--anonymoustrueRegister the user commitment for mixer support
--user <name>Active userRegister a specific configured user without changing the global active user. Useful for registering multiple users concurrently in automation.

Examples

Checking registration status

To see whether an account is already registered without submitting any transactions, run umbra register — it will report “already registered” and exit cleanly if all steps are complete.