ordinary transfer
- amount1,000.000000
- sender5L2H…Dv4C
- recipientF79K…dFAH
- slot511,962,079
Four readable fields.
Privacy
VERX uses Solana's Token-2022 confidential transfer extension. It hides how much. It does not hide who, and this page is mostly about that second half.
Public against confidential
An ordinary Token-2022 transfer writes four readable fields. Anyone with a block explorer reads all four, forever, and so does anyone who indexes them later.
A confidential transfer encrypts the AMOUNT under your ElGamal key and proves it is in range without revealing it. What lands on chain where the number was is ciphertext.
Both token accounts, the fee payer and the slot are exactly as public as before. VERX hides how much. It does not hide who paid whom, and it is not a mixer.
A deposit and a withdrawal both carry their amounts in the clear, so the two ends of a round trip link by arithmetic. Encryption does not hide when you act, and it creates no new addresses.
stage 1 of 4
What is encrypted
What stays visible
Local key derivation
Unlocking asks your wallet to sign eighteen fixed bytes. Those bytes derive an ElGamal keypair for the ciphertexts and an AES key for the copy of the balance only you can read. Both happen in the tab, both live in memory, and a reload asks again.
Because the keys come from the signature, the same wallet on another machine derives the same keys. There is no second seed to write down, and VERX could not give you one.
Privacy limitations
These are not edge cases. They are the ordinary consequences of hiding one field and leaving the rest of a public ledger alone.
Shielding 1,000 and withdrawing 1,000 a few minutes later links the two ends by arithmetic, whatever happened in between.
A confidential transfer that lands two slots after a deposit, every time, is a pattern. Encryption does not hide when you act.
VERX moves value between accounts you and your recipient already control. It creates no fresh addresses, no pool and no intermediary, so the edges of the graph are exactly as they were.
Privacy of an amount is only as strong as the set of accounts it could belong to. On a test mint with a handful of accounts, that set is small.
The proofs are checked by ZkE1Gama1Proof11111111111111111111111111111, a program built into the validator. VERX deploys none of its own.
The protocol underneath, and the security limits around it.