Getting started
How it works
From upload to claim in five steps, with every amount encrypted per recipient before it touches the chain.
The five steps
Connect
Configure
address, amount.Encrypt
Launch
Claim
Encryption is client-side
Amounts are encrypted in your browser, per recipient, before the transaction is submitted. Plaintext values never leave your machine.The confidentiality model
Obscura follows the ERC-7984 model: transfers and addresses are public, but the values moved are encrypted.
| Public | Private |
|---|---|
| Recipient addresses | Allocation amounts |
| The ERC-7984 transfers | Pool sizes and subtotals |
| Contract, token, and admin addresses | Vested / claimed balances and totals |
Decryption is access-controlled by an onchain ACL. Only the recipient can decrypt their own amount, and only the campaign owner can decrypt totals. The contract that stored a value must have granted the wallet access first, or the decrypt reverts.
Where amounts live
Onchain, an encrypted amount is a 64-bit ciphertext referenced by an opaque handle. Contracts operate on handles, and the homomorphic math runs off-chain on the Zama coprocessor. You never see a plaintext amount on a block explorer, only handles and addresses.