GhostPass is a privacy-focused Web3 application built during the Monad Hackathon that enables anonymous wallet verification without revealing any personal identity. This post covers the project goals, architecture, features, and implementation details.
π Prefer a personal behind-the-scenes read? Check out my 3-min blog post covering our hackathon experience in detail.
π§ About the Monad Hackathon
The Monad Web3 Hackathon brought together blockchain developers, builders, and privacy advocates to experiment on top of Monad, a high-performance, EVM-compatible Layer 1 blockchain. Monad is designed for 10,000+ TPS, and its innovative consensus and execution engine enables scalable dApps without compromising decentralization.
During the hackathon, our team built GhostPass β a privacy-first wallet verification platform β within 6 hours.
Project: GhostPass
GhostPass is a privacy-focused platform for anonymous wallet verification on the blockchain. It allows users to prove wallet ownership and display verification statusβwithout revealing personal identity.
π Key Features
- Wallet Verification: Users sign a challenge to prove ownership of their wallet.
- Anonymous Identity: No personal data is collected; only public blockchain information is stored.
- Verification Lookup: Anyone can check verification status of any Ethereum wallet.
- Batch & Revoke Support: Admin tools for bulk verification and revoking.
- Modern Web Interface: Built with Next.js and TypeScript for a smooth user experience.
βοΈ How It Works
1. Connect & Verify
- Users connect via MetaMask or any EIP-1193 wallet.
- A message challenge is signed to prove ownership.
- Signature is verified server-side.
- On success, a verification transaction is submitted to the smart contract.
- The wallet address, verification timestamp, and transaction hash are logged.
2. Display Verified Users
-
The backend maintains a list of verified wallets with:
address
-
verifiedAt
timestamp transactionHash
-
This data is accessible via:
- Public API (
/verified-users
) - UI-based lookup interface
- Public API (
3. Check Verification Status
- Anyone can check if a wallet is verified by querying:
/verify/:address
π οΈ Technology Stack
- Frontend: Next.js (React), TypeScript
- Backend: Node.js, Express, ethers.js
- Smart Contracts: Ethereum via Hardhat
- Wallet Integration: MetaMask or any EIP-1193-compatible wallet
π‘ API Overview
Endpoint | Method | Description |
---|---|---|
/verify |
POST | Verify wallet by submitting signature |
/verify/:address |
GET | Check if a wallet is verified |
/verified-users |
GET | List all verified wallets |
/revoke |
POST | Admin-only endpoint to revoke verification |
π§ͺ Local Development Setup
Backend
bash
cd backend
npm install
# Set environment variables in .env
npm start
Top comments (1)
Nice read! Very detailed!
Some comments may only be visible to logged-in visitors. Sign in to view all comments.