Skip to content
penumbra

penumbra

Private trades, unaffected markets, effortlessly.

Created on 14th March 2026

penumbra

penumbra

Private trades, unaffected markets, effortlessly.

The problem penumbra solves

On-chain auctions have no privacy.

On a public blockchain, every bid is visible to everyone in real time. This creates three critical issues:

**1. Bid manipulation: **later bidders can see existing bids and only outbid by the minimum, suppressing the true price
**2. Identity exposure: ** bidder addresses are public, linking financial activity to real-world identities
**3. Front-running: ** bots and other participants can exploit visible bid data before it's finalized

Traditional sealed-bid auctions (common in government bonds, real estate, spectrum allocation) solve manipulation, but no one had made them work privately on-chain.

Penumbra brings sealed-bid auctions to Ethereum using ZK proofs, bid amounts and bidder identities never appear on-chain, not even after the auction ends. The winner claims tokens by proving knowledge of a secret, not by revealing who they are.

Penumbra solves the transparency problem of on-chain auctions, bids, amounts, and winner identities stay private end-to-end using zero-knowledge proofs.

Challenges we ran into

1. ZK proofs on a hackathon timeline
Generating and verifying ZK proofs server-side, then submitting them from a burner wallet so the winner's real address never touches the claim transaction. Getting the circuit, proof generation, and on-chain verifier to agree took significant iteration.

2. The off-chain/on-chain split
The whole point is that bids never appear on-chain, but Ethereum needs something to verify. Designing the nullifier scheme (bidders commit a hash on-chain, the backend knows the preimage, the winner proves knowledge without revealing it) required careful architecture so neither side could cheat.

3. Stealth address key derivation
Deriving spending and viewing keypairs deterministically from wallet signatures — without ever sending private keys to a server. The secp256k1 point multiplication needed to generate real uncompressed public keys is not natively available in the browser.

4. BitGo custody for private ETH deposits
Each bidder gets a unique deposit address so their ETH can't be correlated on-chain. Integrating BitGo's wallet API to generate these addresses, track confirmations, and route payouts to stealth addresses added a whole backend layer that most Ethereum projects don't need.

5. Auction phase state machine
Five phases (commit → settle → ended → claimed / cancelled) each with different UI, different allowed actions, and live on-chain polling. Keeping the frontend consistent across all states without race conditions was genuinely fiddly.

Tracks Applied (9)

Privacy

Core Thesis Penumbra is privacy infrastructure for on-chain commerce. Every architectural decision, from bid commitment ...Read More

DeFi

Why Privacy is a Natural Fit for DeFi The Core Problem with Transparent DeFi DeFi runs on public blockchains, every tran...Read More

Best creative use of ENS

How Penumbra Uses ENS The Problem with Auction Identities In a sealed-bid auction, the seller needs to be discoverable a...Read More
Ethereum Name Service

Ethereum Name Service

Pool prize

How Penumbra Uses ENS The Problem with Auction Identities In a sealed-bid auction, the seller needs to be discoverable a...Read More
Ethereum Name Service

Ethereum Name Service

Best Privacy Application using BitGo

How Penumbra Uses BitGo BitGo as the Core Privacy Layer Penumbra uses BitGo as the core custody layer for its ZK sealed-...Read More
BitGo

BitGo

Best DeFi Application using BitGo

How Penumbra Uses BitGo for DeFi A New DeFi Primitive, Private Sealed-Bid Auctions Penumbra is a ZK-powered sealed-bid a...Read More
BitGo

BitGo

DeFi 2.0 - New Primitives

Why Sealed-Bid Auctions are a Missing Primitive DeFi today has: Public AMM swaps Public order books Public liquidation a...Read More
Base

Base

Privacy

Why Penumbra Fits the Base Privacy Track Privacy as a First-Class Citizen on Base Penumbra is a ZK-powered sealed-bid au...Read More
Base

Base

BEST Overall Project

Why Penumbra is the Best Overall Project It Solves a Real Problem, Not a Demo Problem Most hackathon projects wrap an ex...Read More

Cheer Project

Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.

Discussion

Builders also viewed

See more projects on Devfolio