Umbra at a glance
What Umbra is for, what it keeps private and what it does not, and what to know before you rely on it.
Umbra gives you a private balance on Solana. You can hold tokens in it and pay other people from it, and nobody watching the chain can see who paid whom, how much, or in which token.
- Submitted by
- A relayerA service that sends the payment to Solana for you
- Relayer tip
- Amount and token, if paid
- When
- The time it landed
- Sender
- Private
- Recipient
- Private
- Amount
- Private
- Token
- Private
Why it exists
Solana is a public ledger. Every balance, every payment and every counterparty can be read by anyone, and stays readable for good. That openness is what lets anyone check the chain, and it is also what makes ordinary financial life awkward to put on it.
A company that pays salaries from one wallet publishes what each person earns. A shop's receiving address shows its revenue and lists its customers. Once a single address is tied to a name, the addresses it pays and is paid by are easy to follow.
Umbra takes the details of a payment off the public record and leaves the rest of Solana as it is. You still settle on Solana, with Solana tokens, and the rules that protect your balance are checked by a Solana program like any other.
How it works
Using Umbra comes down to four steps. Two of them touch the public record, and two do not.
- Depositpublic
- Private balanceprivate
- Private Sendprivate
- Withdrawdestination public, sender private
Deposit. You move tokens from your Solana wallet into Umbra. This is public: anyone can see that your wallet put that amount of that token in.
Hold. From then on the tokens are your private balance. The public record shows how many tokens the Umbra program holds in total, not which of them are yours.
Private Send. You pay someone else who uses Umbra, from your private balance to theirs. The public record shows that a payment happened and when. It does not show who sent it, who received it, how much moved or in which token.
Withdraw. You take tokens out to any Solana address. The address, the token and the amount appear on chain. Who withdrew does not: a relayer sends the withdrawal to Solana, so no wallet of yours signs it, and nothing on chain says which private balance paid for it. That holds as long as the destination is not an address already tied to you in public.
We're not going to pretend nobody saw you walk in. What they can't do is follow you out.
The privacy work happens on your own device. Before anything is sent, your device builds a proof that the payment follows the rules (you own what you spend, and nothing is created out of thin air) without revealing its details, and the Solana program checks that proof. Your keys stay on your device for this. The browser tab has to stay open until it finishes, because the work is running there.
What stays private, and what does not
Who paid whom, how much each payment was, which token moved and which private balance a withdrawal came from all stay private. What is on the public record is that a wallet deposited, with the token and the amount; that tokens were withdrawn to an address, with the token and the amount; that a private payment happened, and when; and which relayer submitted it.
Matching a deposit to a later withdrawal can still be done by guesswork, from amounts and timing. Withdrawing exactly what you deposited, soon after, makes it easy. Privacy practices covers how to avoid that, and how privacy is lost covers the other ways.
Your money stays yours
Umbra never holds your money. Deposited tokens sit in accounts controlled by the Umbra program on Solana, and no person has a key to them, Umbra included. Only you can spend your balance, because spending needs keys that are made on your device from a signature by your own wallet.
The protocol does have administrators. They can change settings such as which tokens are accepted and what fees are charged, and they can pause parts of the system. Every such change is announced on chain and waits out a delay before it can take effect. The code only requires that delay to be at least one Solana slot, under a second, so how much warning you get depends on the delays the administrators have set. None of those powers can move anyone's balance. The operators of the services every payment needs can also stop payments at once, for example by taking their service offline, and that moves nothing either. The program's code can still be upgraded by whoever holds its upgrade key; governance and upgrades sets out every power and who holds it.
Where to start
If you use Umbra
Everything you own
Your wallet, your private balance and how to get it back.
Private Send
What happens when you pay someone.
Privacy practices
Habits that keep your activity private.
Frequently asked questions
Short answers to common questions.
If you build on Umbra
What is Umbra
The problem, the approach and what is different.
System map
Every component, and how a payment moves between them.
Design principles
The decisions the rest of the design follows from.
Deposit, step by step
One operation, end to end.
If you review its security
Trust assumptions
What you have to trust, and what happens when it fails.
Guardian nodes
What they do, and what they can and cannot do.
Governance and upgrades
Every administrative power, and its delay.
Formal verification
What has been proved, and what has not.
Every term used elsewhere on this site has an entry in the glossary.
Last updated