Umbra
An anonymous, verifiable notice board on Midnight. Anyone can read a notice and be sure it came from a legitimate secret-holder, yet the author's real identity stays in shadow — a Compact contract with public ledger state, a private witness, and disclose(), compiled to ZK circuits.
Umbra
In the new moon, the sky holds the moon entirely in shadow — present, but unseen.
Umbra is an anonymous, verifiable notice board built on Midnight. Anyone can read a notice and be sure it came from a legitimate secret-holder — yet the author's real identity stays in shadow. Present, but unseen.
How it works
A holder of a secret key can pin a public notice that anyone can read and verify, without ever exposing who they are. It's a privacy-first "sealed noticeboard" primitive:
- Public ledger state — the notices everyone can see.
- Private witness — the secret the author holds.
disclose()— the controlled reveal that proves legitimacy without identity.
Written in Compact, compiled to ZK circuits, and tested (9 passing) on Midnight's Preview Testnet — a clean, minimal example of proving something is true without proving who you are.
From shadow to a face (Level 2)
Level 1 (New Moon) sealed the privacy contract in shadow — it compiled and was tested, but nothing could see it. Level 2 (Waxing Crescent) gives it a face: a real React frontend, a real wallet (Lace), and a live deployment on Midnight's public testnet.
The chain only ever sees a one-way pseudonymous commitment, never the author. And taking a notice down means proving, in zero knowledge, that you are its author — without ever revealing the secret.
LumenFund