Shinobi

Anonymous DAO governance using zero-knowledge proofs. Private voting with Semaphore protocol

Shinobi

Created At

ETHGlobal New Delhi

Project Description

Shinobi.vote revolutionizes decentralized governance by addressing the fundamental privacy paradox in current DAO systems. While transparency is valuable for accountability, permanent on-chain voting records create detailed behavioral profiles that enable voter intimidation, strategic manipulation, and privacy violations.

Our platform leverages zero-knowledge proof technology through the Semaphore protocol to create a "voting booth for the blockchain age." Members join DAOs using cryptographic identity commitments rather than wallet addresses, generating mathematical proofs of membership without revealing personal information. When voting, users create zero-knowledge proofs that validate their eligibility and choice while maintaining complete anonymity—only a nullifier hash prevents double-voting.

The system preserves all benefits of transparent governance (verifiable results, audit trails, democratic participation) while eliminating surveillance capitalism elements. Vote counts remain publicly verifiable, but individual choices stay private. This enables authentic decision-making where ideas win on merit rather than influence from whale watchers or social pressure.

Built for real-world adoption, Shinobi.vote targets corporate DAOs requiring confidential board decisions, political organizations needing secret ballots, and DeFi protocols where governance shouldn't be influenced by visible voting patterns. The platform demonstrates that privacy and transparency aren't mutually exclusive—they're complementary forces that strengthen democratic processes.

How it's Made

Core Technologies & Architecture

Semaphore Protocol Integration We built on the battle-tested Semaphore v4 zero-knowledge proof system, which provides the cryptographic foundation for anonymous group membership and signaling. The integration required careful coordination between smart contracts and client-side proof generation:

  • Identity Management: Users generate Semaphore identities locally using private keys, creating identity commitments that serve as anonymous membership proofs
  • Group Merkle Trees: We implemented lean incremental Merkle trees (lean-IMT) for efficient membership verification and proof generation
  • ZK Circuit Integration: Leveraged Semaphore's audited circuits for generating membership proofs that validate voting eligibility without identity revelation

Smart Contract Architecture (Solidity) The core governance logic is implemented across modular contracts deployed on Base Sepolia:

We implemented a custom event emission pattern that allows The Graph indexer to track governance analytics (vote counts, proposal states) while maintaining voter anonymity. The contracts emit nullifier hashes and vote counts without any identity correlation, enabling privacy-preserving analytics.

The Graph Protocol Indexing Real-time governance data processing required custom GraphQL schema design:

  • Privacy-First Schema: Designed entities that track proposals, votes, and DAO statistics without storing identity-revealing information
  • Nullifier-Based Analytics: Implemented vote tracking using only nullifier hashes, enabling participation metrics while preserving anonymity
  • Efficient Queries: Built optimized resolvers for common governance queries (active proposals, voting results, member counts)

Frontend Architecture (React + Viem) The user interface prioritizes simplicity while handling complex cryptographic operations:

  • Wallet Integration: Seamless connection via RainbowKit for transaction signing while maintaining identity separation
  • ZK Proof Generation: Client-side Semaphore proof creation using WebAssembly-compiled circuits
  • Real-time Updates: Integration with The Graph for live governance data without compromising privacy
  • Progressive Enhancement: Graceful fallbacks for users without Web3 wallets

Technologies & Benefits

Semaphore Protocol Using Semaphore v4 was crucial for security and reliability: The Graph Using The Graph for DAO event indexing.

Development Stack & Tools

  • Smart Contracts: Solidity with Hardhat development environment
  • Zero-Knowledge: Semaphore v4 with circom circuits and snarkjs
  • Blockchain: Base Sepolia testnet with viem for contract interactions
  • Indexing: The Graph Protocol with custom GraphQL schema
  • Frontend: React with TypeScript, RainbowKit wallet integration
  • Styling: Tailwind CSS with Radix UI components
  • Package Management: Turborepo monorepo with workspace dependencies

Security Considerations

Zero-Knowledge Proof Integrity

  • Leveraged audited Semaphore circuits to ensure proof soundness
  • Implemented proper nullifier verification to prevent double-voting
  • Added circuit parameter validation for proof generation

Smart Contract Security

  • Comprehensive access controls for DAO management functions
  • Reentrancy protection for all state-changing operations
  • Input validation for all user-provided data

Privacy Guarantees

  • No identity correlation stored on-chain or in indexer
  • Client-side proof generation ensures private keys never leave user devices
  • Nullifier hashes provide unlinkability while preventing replay attacks

This architecture demonstrates that sophisticated privacy technology can be made accessible through thoughtful UX design and careful integration of cutting-edge cryptographic protocols.

background image mobile

Join the mailing list

Get the latest news and updates