Nouns Proposal 972
Defeated

Secret Ballot Voting & Sealed Bid Auctions for Nouns DAO

Proposed by 0xd714...F3C8
For
0
Against
150
Abstain
12
Description

TL;DR

Nouns DAO tried to get private voting in 2023. It didn't ship. We're going to ship it — along with sealed bid auctions — before the end of 2026. Full-stack: contracts, frontend, supporting services, and live governance proposals to activate both features on Nouns. Built on cryptographically sound, trustless infrastructure with no reliance on any single operator or trusted party.

Ask: 1 Noun + 111 stETH


Note on Revision

Updated to address three common points of feedback:

  1. Ask amount: There was strong objection to the size of the original proposal. This revision halves the ask.
  2. #breakevenmovement: Nouns' approach and culture has evolved, shifting focus from raw grants to more mutually beneficial arrangements. This proposal makes the mutual benefit much more explicit by structuring it as an investment rather than a grant.
  3. Receipt-free voting uncertainty: There is genuine uncertainty around whether receipt-free secret ballot voting is desirable for Nouns proper. We strongly believe that it would be a net improvement for Nouns, along with many other onchain orgs. However, we recognize that it is bold change. To address this, we propose that the stack could first be tested on a smaller Nouns derivative (existing or new) before being adopted by Nouns itself.

Context

The Unfinished Business of Prop 216

In early 2023, Nouns DAO funded a Private Voting Research Sprint — one of the most forward-thinking governance experiments in the DAO space. Three teams received ~70K USDC each to research trustless, ballot-secret, on-chain voting. The sprint was genuinely valuable: it proved that private voting on Ethereum is possible, and produced real cryptographic research.

But the outcomes never became usable software. The deliverables were CLI-based proofs of concept — not market-ready, not audited, requiring developers to write code rather than click buttons. Key requirements like multisig support and weighted voting were explicitly excluded. The research sprint answered the theoretical question but left the practical one wide open.

The reasons are understandable: it was early, the tooling was immature, and the funding was sized for research, not production. The teams did what was asked. But Nouns never got private voting.

The same story has played out, quietly, with auctions. The Nouns auction is one of the most elegant on-chain mechanisms in existence — one Noun, every day, forever. Yet its bids are fully public, which creates well-documented dynamics: bid sniping, last-second manipulation, and strategic suppression of price signals. A sealed bid auction would directly address these issues and produce more accurate price discovery for Nouns and derivative DAOs.

Why Private Voting and Sealed Bid Auctions Matter

On voting: Public on-chain voting creates a category of problems collectively known as "open ballot pathologies." When votes are visible in real time, holders experience last-minute vote changes driven by social pressure rather than conviction (the "11th-hour problem"), vote coercion from large token holders, and bandwagon effects where delegates wait to see how influential Nouners vote before committing. Secret ballot voting — the global default in virtually every democratic system for 150 years — eliminates these dynamics without sacrificing verifiability. The tally is publicly provable; the individual votes are not.

On auctions: Sealed bid auctions prevent bidders from strategically timing their bids to avoid driving up the price. When all bids are encrypted until auction close, the winner is determined by genuine valuation rather than gameable timing. For a protocol where a single auction determines who joins the DAO each day, this matters enormously.

Why This Will Succeed Where The Sprint Fell Short

The 2023 sprint was a research exercise. This is an implementation engagement — and the conditions that made production impossible in 2023 have changed substantially.

The critical missing piece in 2023 was the absence of production-ready infrastructure for trustless encrypted computation. That infrastructure now exists. We will build on The Interfold — an open-source protocol launching in mid-June 2026 that coordinates Encrypted Execution Environments (E3s) across a distributed network of staked ciphernodes. It combines three cryptographic primitives into a coherent, developer-accessible stack:

  • Fully Homomorphic Encryption (FHE): Computation runs directly on encrypted inputs. Votes and bids are never decrypted individually — only final results are revealed.
  • Zero-Knowledge Proofs (ZKPs): Voters and bidders prove eligibility and input validity without revealing their identity or choice. All computation is verifiably correct.
  • Distributed Threshold Cryptography (DTC): No single operator controls decryption. Ciphernodes are selected via cryptographic sortition and must cooperate collectively to reveal results — eliminating any single point of failure or trust.

The Interfold already ships a complete reference implementation for secret ballot voting — including a React frontend, Rust coordination server, ZK circuits, and smart contracts — which this work will extend and adapt for Nouns. We are the team building The Interfold, and we are ready to begin on day one of its launch.

Where the 2023 sprint produced a CLI, this proposal produces a product. Where the sprint excluded multisig support, this implementation handles it natively. Where the sprint stopped at research, this proposal ends with live on-chain proposals to activate both features on Nouns itself.


Deliverables

This engagement targets a three-month timeline beginning at The Interfold's launch in mid-June 2026, with a hard maximum of six months. All work is open source. All contracts will be audited prior to any live proposal to Nouns governance.

Phase 1 — Secret Ballot Voting for Nouns (Months 1–3)

Smart Contracts

  • A Nouns-specific private voting contract with NFT holder and delegate eligibility verification via Merkle proofs
  • Weighted voting support with ballot batching to prevent vote-weight fingerprinting
  • Multisig voter support
  • Integration with the existing `NounsGovernor` contract — private voting is a drop-in augmentation, not a replacement

Frontend

  • In-browser ballot encryption — votes are encrypted client-side and never exposed to any intermediary
  • ZK proof generation in the browser for voter eligibility and ballot validity
  • Real-time voting status and verifiable tally display
  • Full MetaMask / WalletConnect support
  • Deployable as a standalone interface or integrated into Nouns.wtf

Supporting Services

  • Coordination server managing the full voting lifecycle (committee formation, key generation, compute triggering, result publication)
  • Ciphernode committee configuration and operational documentation tuned for Nouns

Governance

  • A live Nouns DAO proposal to activate secret ballot voting on a defined class of proposals

Phase 2 — Sealed Bid Auctions for Nouns (Months 2–4, overlapping)

Smart Contracts

  • A sealed bid auction contract modifying the existing `NounsAuctionHouse` to accept encrypted bids during the auction window
  • ZK bid validation: bidders prove their bid exceeds the reserve without revealing the amount
  • Automatic winner determination and settlement upon computation completion, fully verifiable on-chain
  • Parameterized for reuse by Noun-like DAOs (LilNouns, SharkDAO, etc.)

Frontend

  • Encrypted bid submission UI integrated into the existing auction experience
  • Status display reflecting auction lifecycle stages (bidding open → sealed → settlement)
  • Bid confirmation and receipt flow

Supporting Services

  • Compute provider configuration for auction-specific encrypted programs
  • Settlement hook for automatic winner notification and NFT transfer

Governance

  • A live Nouns DAO proposal to migrate the Nouns auction to the sealed bid mechanism, with a proposed rollout path and kill switch

Phase 3 — Ecosystem Packaging (Months 5–6, if needed)

  • A generalized private voting and sealed auction template package, documented and deployable by any Noun-fork DAO without custom development
  • Developer-facing deployment guide and SDK documentation
  • Public technical report and postmortem for the Nouns community

Ask

ItemAmount
Noun1 Noun
stETH111 stETH

111 stETH at a $30M valuation. This funding will go towards full-stack engineering (contracts, frontend, backend, ZK circuits), security audit(s), ciphernode infrastructure costs, and comms for the activation proposals through Nouns DAO. This is structured as an investment with a 12-month holding period, alongside a 24-month linear unlock from TGE, aligning our long-term incentives with the DAO and mirroring terms for previous investors in The Interfold.

1 Noun aligns our long-term incentives with the DAO. We are not building a service for Nouns — we are becoming part of it. The Noun will not be sold or delegated away during the engagement period. It gives us a seat at the table and a reason to care about the outcome beyond the contract. We asked for 245 because some of us are coffee nerds.


Why Now

The tooling that made this impossible in 2023 launches in June. The cryptographic primitives that the original sprint spent three months exploring are now packaged, auditable, and accessible. We are at the earliest moment when this work is actually executable, and we intend to begin on day one.

Nouns has a long track record of funding experiments at the frontier of on-chain governance. This is not a frontier experiment — the frontier work is already done. This is the moment to collect on that bet and actually ship the feature.

⌐◨-◨


For questions or technical discussion, reach out on Discord or visit docs.theinterfold.com.

Proposed Transactions
0x9C8fF314C9Bc7F6e59A9d9225Fb22946427eDC03.safeTransferFrom(address,address,uint256)(
0x000000000000000000000000b1a32fc9f9d8b2cf86c068cae13108809547ef7100000000000000000000000012beef35025841efccb77d6ee40df86400fdb4bb00000000000000000000000000000000000000000000000000000000000000f5
)
0x00000000000000000000000012beef35025841efccb77d6ee40df86400fdb4bb000000000000000000000000000000000000000000000006046f37e5945c0000
)