Zero-knowledge proofs for file verification without revealing content
Ever needed to prove that a specific piece of information exists in a massive dataset without actually showing the data? That's exactly what zkIPFS-Proof does. Whether you're a journalist protecting sources, a researcher validating findings, or an auditor checking compliance, this tool lets you create cryptographic proofs that can be verified by anyone.
Imagine you have a 50GB CSV file containing sensitive financial data, and you need to prove that a specific transaction exists without revealing any other information. Traditional approaches would require you to either share the entire file (privacy nightmare) or trust a third party (defeats the purpose).
zkIPFS-Proof solves this using zero-knowledge proofs powered by Risc0's ZK-VM. You can prove that specific content exists within any file while keeping everything else private. The proof is just a small JSON file that anyone can verify in seconds.
# Install the CLI tool
cargo install zkipfs-proof
# Or download pre-built binaries from releases
curl -L https://github.com/sowadalmughni/zkipfs-proof/releases/latest/download/zkipfs-proof-linux.tar.gz | tar xz# Create a proof that "Hello, World!" exists in your file
zkipfs-proof generate --file document.txt --content "Hello, World!" --output proof.json
# The proof is now in proof.json - share it with anyone!# Anyone can verify your proof without seeing the original file
zkipfs-proof verify --proof proof.json
# Output: β
Proof verified successfullyThat's it! You've just created and verified a zero-knowledge proof.
- Prove specific information exists in leaked documents without exposing sources
- Verify authenticity of claims without revealing sensitive details
- Create verifiable evidence for investigative reporting
- Prove compliance with regulations without sharing confidential data
- Verify specific transactions exist without exposing account details
- Demonstrate due diligence while maintaining client privacy
- Prove findings exist in datasets without sharing proprietary information
- Verify experimental results without revealing methodology details
- Create reproducible evidence for peer review
- Prove document authenticity in legal proceedings
- Verify compliance without exposing trade secrets
- Create tamper-evident evidence chains
zkIPFS-Proof combines three powerful technologies:
- Risc0 ZK-VM: Generates zero-knowledge proofs that are mathematically impossible to fake
- IPFS: Provides decentralized, content-addressed storage for files
- Smart Contracts: Enable on-chain verification for maximum transparency
The process is surprisingly simple:
- Upload: Your file gets uploaded to IPFS and receives a unique content identifier (CID)
- Prove: The ZK circuit analyzes your file and generates a cryptographic proof
- Verify: Anyone can verify the proof using our CLI, web app, or smart contracts
The beauty is that the proof reveals nothing about your file except what you explicitly choose to prove.
- Zero-knowledge proofs reveal only what you want to prove
- Original files never leave your control
- No trusted third parties required
- Proofs verify in under 1 second
- Works with files up to 50GB
- Optimized for both small snippets and large datasets
- Built-in IPFS integration
- Content-addressed storage ensures integrity
- Global accessibility without central servers
- Simple CLI interface
- Comprehensive API
- GitHub Actions for CI/CD integration
- Web interface for non-technical users
- On-chain verification via Solidity contracts
- Support for Ethereum, Polygon, Arbitrum, and more
- Gas-optimized batch verification
- Regex Support: Prove patterns (e.g., email, dates) exist without revealing values
- Zero-Leakage: Verify format compliance while maintaining total privacy
- Prometheus Metrics: Built-in monitoring for proof generation and verification
- Distributed Tracing: Full visibility into request lifecycles
- Admin Dashboard: Manage API keys, view analytics, and monitor system health
- Role-Based Access: Secure API endpoints with API Key authentication
- Rate Limiting: Protect your resources with token-bucket rate limiting strategies
- Persistent Storage: PostgreSQL integration for reliable data persistence
docker-compose up -dRun the full enterprise stack with database and monitoring:
docker-compose -f docker-compose.enterprise.yml up -dzkipfs-proof/
βββ backend/
β βββ core/ # Core Rust library with ZK circuits
β βββ cli/ # Command-line interface
β βββ contracts/ # Solidity smart contracts
βββ frontend/
β βββ web/ # React web application
βββ docs/ # Documentation and tutorials
βββ examples/ # Real-world usage examples
This is a open source product. I want others to join and contribute.
- Fork the repository
- Create a feature branch (
git checkout -b amazing-feature) - Make your changes
- Add tests if applicable
- Submit a pull request
# Clone the repository
git clone https://github.com/sowadalmughni/zkipfs-proof.git
cd zkipfs-proof
# Install Rust dependencies
cd backend && cargo build
# Install Node.js dependencies for the web app
cd ../frontend/web && npm install
# Run tests
cd ../../backend && cargo test- Additional blockchain integrations (Solana, Cosmos, Near, etc.)
- Mobile app enhancements for iOS and Android
- Internationalization (i18n) and localization
- Plugin ecosystem development
- Community tutorials and video content
- Accessibility improvements for the web interface
- Risc0 ZK circuit implementation
- CLI tool with full functionality
- IPFS integration
- Basic web interface
- Solidity smart contracts
- GitHub Actions
- Multi-chain support
- Comprehensive documentation
- Advanced content selection (Regex)
- Advanced content selection (XPath)
- Batch proof generation
- Performance optimizations
- Enterprise dashboard
- API rate limiting and authentication
- Advanced analytics and monitoring
- Custom deployment options
- Professional support
- Mobile applications for iOS and Android
- Browser extensions (Chrome, Firefox, Safari)
- Solana and Cosmos blockchain support
- Plugin architecture for custom proof types
- SDK for third-party integrations
- Proof aggregation and rollups
- Decentralized proof verification network
- Community marketplace for proof templates
- Multi-language support (i18n)
- Hardware wallet integration
- Enterprise SSO and LDAP integration
Security is paramount when dealing with cryptographic proofs. Here's how we ensure zkIPFS-Proof is secure:
- Formal verification of ZK circuits using Risc0's proven framework
- Regular security audits by independent third parties
- Open source codebase for maximum transparency
- Bug bounty program for responsible disclosure
- Comprehensive testing including fuzzing and property-based tests
Found a security issue? Please email sowad@kitalonlabs.com instead of opening a public issue.
MIT License - see LICENSE for details.
This project wouldn't exist without the incredible work of:
- The Risc0 team for building the ZK-VM that powers our proofs
- The IPFS community for creating the decentralized storage layer
- The Ethereum ecosystem for smart contract infrastructure
- All the contributors who've helped make this project better
- Primary Contact: Md. Sowad Al-Mughni (sowad@kitalonlabs.com)
- Company: Kitalon Labs
- Documentation: Check out our comprehensive guides
- GitHub Discussions: Join discussions and ask questions
- Issues: Report bugs on GitHub Issues
Maintained by Kitalon Labs β Md. Sowad Al-Mughni (sowad@kitalonlabs.com)
Made with β€οΈ by Md. Sowad Al-Mughni