The OpenZeppelin of Privacy: Battle-tested zero-knowledge patterns for Noir
NoirZeppelin is a comprehensive, production-ready privacy library for the Noir programming language that ports battle-tested OpenZeppelin contract patterns into zero-knowledge circuits. Build privacy-preserving applications for both Web2 and Web3 without deep cryptographic expertise.
Just as OpenZeppelin made smart contract development accessible and secure, NoirZeppelin makes zero-knowledge proof development simple and safe.
Developer Experience:
- Simple API: Import functions like
verify_password()orprove_token_balance()- no cryptography PhD required - Copy-paste ready: Production-ready circuits that work out of the box
- Universal compatibility: Same code works for Web2 backends and Web3 smart contracts
- Fast integration: Go from idea to working privacy app in hours, not weeks
Key Benefits:
- Security by default: Audited, battle-tested patterns prevent common ZK vulnerabilities
- Reduced development time: 10x faster than building privacy circuits from scratch
- Lower risk: No need to reinvent cryptographic primitives - use proven patterns
- Privacy without complexity: Abstract away circuit details, focus on your application logic
# Install NoirZeppelin
nargo install noirzeppelinuse dep::noirzeppelin::authentication::verify_password;
fn main(
password: Field, // Private
salt: Field, // Private
password_hash: pub Field // Public
) {
let computed = verify_password(password, salt);
assert(computed == password_hash);
}That's it! You've just built a password authentication system where passwords never leave the client.
- 🔐 Access Control - Role verification, multisig, permissions
- 🔑 Authentication - Password verification, 2FA, secret proofs
- 🪙 Token Operations - Balance proofs, private transfers, NFT ownership
- 🗳️ Voting - Private governance, anonymous voting, eligibility proofs
- 🌲 Merkle Proofs - Membership proofs, batch verification, nullifiers
- Private Password Authentication (Web2)
- Token Gating (Web3)
- Anonymous DAO Voting (Web3)
- Private DeFi Swaps (Web3)
- Phase 1 (Months 1-2): MVP with core modules + audit
- Phase 2 (Months 3-4): Extended modules + performance optimization
- Phase 3 (Months 5-6): Ecosystem integration + mainnet examples
NoirZeppelin takes security seriously. We have:
- 📊 Formal verification for critical circuits
- 🔍 Continuous security monitoring
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
MIT License - see LICENSE for details.
Inspired by OpenZeppelin - the gold standard for smart contract security.
Built with Noir - the universal ZK language.
Built with ❤️ by the privacy community, for the privacy community.