Kaddu — Confidential, verifiable civic tools for communities, built on Zama FHE.
Track: Builder — Zama Developer Program
3-min video: https://youtu.be/RUnryaEYGJM
Start with the diamond: a threshold whistleblower vault
What if a corruption or harassment report only became visible once enough people independently flagged the same target — so a lone whistleblower stays mathematically invisible? That primitive is impossible without FHE, and it is live in Kaddu.
It is one of 8 confidential civic tools built on the same idea — compute on encrypted data, reveal only the result — powered by Zama: Concrete off-chain and fhEVM on-chain.
The flagship on-chain: KadduTender 
A tamper-proof public tender: sealed bids, the winner computed on encrypted data (the organizer has zero discretion), payment held in an ERC-7984 confidential-token escrow and released only when N citizens confirm delivery, a self-slashing confidential caution, and an encrypted collusion tripwire. Zama’s Confidential RFQ proved sealed-bid auctions for finance; KadduTender makes them tamper-proof for the public good.
The toolkit (same engine)
Confidential voting · tamper-proof tontines · sealed-bid tenders · protected pooling & private comparator · the threshold whistleblower vault · community-approved budgets · a social-style community space. Bilingual FR/EN, mobile-first, free.
On-chain (fhEVM · Sepolia) — source + tests in /fhevm
- KadduTender — 0x15a12f29b69dc65Bc9d6206f0Ebcb8e624549768
- KadduBudgetVote — 0x68B6cc4949E514930773507FB60781e0Ec1ec80f
- KadduVote — 0x2e53C38af76aeEE1902C6FA2A1F7AdDc269F94c7
- KadduTontine — 0x23E30319EfB8B19d22201778A95A0B3eC50ee311
All four on-chain contracts are source-verified on Etherscan (green check ✓ — readable Solidity, exact-match).
KadduVote.sol tallies encrypted ballots (FHE.fromExternal → FHE.eq → FHE.add) and exposes only the totals via FHE.makePubliclyDecryptable(). Contracts, a Hardhat test suite (KadduVote / KadduTender / KadduTontine) and the deployment record are in /fhevm.
Two honest layers
- On-chain (fhEVM): trustless — data is encrypted client-side, so not even the operator can decrypt an individual value.
- Web app (Concrete): ballots are encrypted and tallied homomorphically; only totals are revealed, and the organizer never sees an individual vote. (In the web version the server performs the encryption — the strongest “not even us” guarantee comes from the on-chain layer.)
Links
- Live demo: https://kaddu-zama.onrender.com
- Code (GitHub, AGPL-3.0): GitHub - elhadjipapealaminesarr-creator/kaddu-zama: Confidential, verifiable civic tools — secret voting, tamper-proof tontines, sealed-bid tenders & a threshold whistleblower vault. Built with Zama FHE (Concrete + fhEVM on Sepolia). Live, free, bilingual FR/EN. · GitHub
Feedback very welcome — especially: is the FHE value obvious to a non-crypto community member?
— Pape, Dakar ![]()