Abstract
This research benchmarks the performance of three leading Non-Interactive Zero-Knowledge Proof (NIZKP) protocols—zk-SNARK, zk-STARK, and Bulletproofs—in a unified real-world application. By implementing a dynamic MiMC hash function across four programming libraries and two languages, we compare proof sizes, generation times, and verification speeds. Key findings include:
- zk-SNARK: Smallest proofs but requires trusted setup.
- zk-STARK: Largest proofs but fastest generation and quantum-resistant.
- Bulletproofs: No trusted setup but slowest verification.
Results align with general performance trends, though zk-SNARK verification marginally outperforms zk-STARK in our tests. This work aids researchers and practitioners in selecting protocols based on security, efficiency, and application context.
Keywords: NIZKP, zk-SNARK, zk-STARK, Bulletproofs, privacy-preserving authentication, benchmark
1. Introduction
1.1 Background & Context
Zero-Knowledge Proofs (ZKPs) enable provers to validate statements without revealing underlying data. Non-interactive variants (NIZKPs) enhance practicality by eliminating multi-round interactions. Prominent in cryptocurrencies (e.g., ZCash, Ethereum), NIZKPs also apply to privacy-preserving authentication, cloud computation verification, and more.
1.2 Research Questions
- What are the performance differences among zk-SNARK, zk-STARK, and Bulletproofs in equivalent applications?
- Which use cases best suit each protocol’s features?
1.3 Aims & Objectives
- Implement a benchmark comparing the three protocols.
- Analyze efficiency, security trade-offs, and scalability.
- Provide protocol selection recommendations.
2. Literature Review
2.1 Summary & Findings
- zk-SNARK: Dominates research (31/41 studies) due to succinct proofs.
- Bulletproofs: Gaining traction (10/41 studies) for transparency.
- zk-STARK: Rarely deployed; limited real-world benchmarks.
2.2 Research Gaps
Lack of standardized performance comparisons across protocols in identical applications.
3. Methodology
3.1 Approach
- Use general-purpose libraries (e.g., libsnark, starkware, bulletproofs) to implement a MiMC hash function.
- Benchmark proof size, generation/verification times, and security levels.
3.2 Design
- Application: Dynamic MiMC hash (scalable rounds).
- Metrics: Proof size (bytes), time (ms), and security (bits).
4. Mathematical Primitives
4.2 zk-SNARK
- Core: Quadratic Arithmetic Programs (QAP), bilinear pairings, elliptic curves.
- Security: Trusted setup (CRS); vulnerable if toxic waste leaks.
4.3 zk-STARK
- Core: FRI protocol, Reed-Solomon codes, Merkle trees.
- Security: Quantum-resistant; no trusted setup.
4.4 Bulletproofs
- Core: Inner product arguments, Pedersen commitments.
- Security: No trusted setup; slower verification.
5. Proposed Solution
5.3 Implementation
- Libraries: Arkworks (Rust), starknet.py (Python), etc.
- Constraints: Identical MiMC hash logic across protocols.
5.4 Benchmark Procedure
- Setup: Generate CRS (zk-SNARK only).
- Proving: Measure proof generation time.
- Verification: Validate proof correctness and speed.
6. Results
6.1 Benchmark Metrics
| Protocol | Proof Size (KB) | Generation Time (ms) | Verification Time (ms) |
|---------------|-----------------|----------------------|------------------------|
| zk-SNARK | 2.1 | 120 | 8 |
| zk-STARK | 45.3 | 85 | 12 |
| Bulletproofs | 3.8 | 210 | 25 |
6.2 Analysis
- zk-SNARK: Optimal for low-bandwidth applications (e.g., blockchain).
- zk-STARK: Best for post-quantum security (e.g., government systems).
- Bulletproofs: Transparent but trades speed for trustlessness.
7. Discussion
7.1 Achieved Results
- Confirmed known performance hierarchies but noted zk-SNARK’s faster verification.
- Highlighted zk-STARK’s scalability for large computations.
7.5 Potential Applications
- zk-SNARK: Private cryptocurrencies.
- zk-STARK: Regulatory-compliant audits.
- Bulletproofs: Decentralized identity systems.
8. Conclusion
8.1 Key Findings
- Protocol choice depends on trade-offs between trust, speed, and proof size.
- zk-STARK excels in future-proofing against quantum threats.
8.3 Future Directions
- Explore hybrid protocols combining strengths of each.
👉 Explore advanced cryptographic applications
FAQ Section
Q: Which protocol is best for resource-constrained environments?
A: zk-SNARK, due to its compact proofs and fast verification.
Q: Are Bulletproofs suitable for high-throughput systems?
A: No—verification delays make them better for low-frequency, high-value transactions.
Q: How does zk-STARK achieve quantum resistance?
A: By relying on hash-based cryptography (e.g., FRI) instead of DLP-based primitives.