Dagon zkAPI
Trusted setup ceremony
Add your randomness to the keys that secure private payments. One click, a few minutes, nothing to install.
What happens when you press the button
- Why. Zero-knowledge proofs need public keys that were made from secret random numbers. Whoever knows those secrets could forge proofs, so the secrets must be destroyed. Many people each add their own randomness; the secrets are gone unless every single one of them cheated.
- You. Your browser downloads the current keys, mixes in fresh randomness from your device (and anything you type or wiggle below), sends the changed keys back and forgets the randomness. About a few minute(s).
- One honest person is enough. You do not have to trust us, or anyone: if you are honest, the setup is safe, and anyone can re-check the whole chain afterwards.
- What it does not do. No wallet, no account, no keys of yours, nothing installed or stored. We never see your randomness; only the public result is uploaded. We keep no IP addresses beyond short-lived rate limiting.
- Please. Use a device you trust, close other tabs, keep this one open and awake until it says “Done”.
Your device’s secure random generator is always used. What you add here is mixed in on top and can only make the result stronger.
Connecting to the ceremony…
Working…
- Wait for your turn
- Download the current keys
- Mix in your randomness
- Send the result back
- Coordinator checks it
Keep this tab open. Nothing secret leaves your device.
Done. Thank you!
Your contribution is round . This is your attestation hash:
Post this to attest
Anyone can check that your contribution is in the final keys. Posting the hash somewhere public (not here) is what makes it count as proof.
Post on X Post on Bluesky Email it to yourself
Per-circuit contribution hashes
You can close this page now. Nothing about your randomness exists anywhere any more.
That did not work
Contributors
Verify everything yourself: node verify-ceremony.mjs (see the README).