art by the illustrious https://x.com/kitvolta
Zero-knowledge proofs are transforming how we handle sensitive computations in Web3, but they’ve traditionally been constrained by hardware requirements. Today, we’re excited to announce a breakthrough collaboration with Inference Labs: EZKL’s new Metal bindings enable ZK proofs to run efficiently on iOS devices, and we’re launching a competition on Subnet 2 to push this technology even further.
The Challenge: Making ZK Practical
Zero-knowledge proofs have always promised powerful privacy guarantees, but their computational intensity made them impractical for everyday devices. Running complex ZK circuits required specialized hardware or cloud infrastructure, creating a barrier to widespread adoption and introducing trust assumptions that we’d rather avoid when building private systems.
This limitation has been particularly acute for applications requiring real-time verification, like age checks or KYC processes. Users either had to trust centralized servers with their personal data or deal with slow, cumbersome verification processes. This, we believe, has been one of the fundamental barriers to the adoption of ZK identity solutions.
We believe the potential of these applications is myriad. For developers, not handling sensitive user data reduces infrastructure and security costs; and greatly reduces the impact and risk of data breaches ! For users, privacy by default means that their information is much less likely to be leaked to nefarious actors or compromised in breaches. Everyone wins 🙂.
The Breakthrough: Metal Bindings
Our latest update to the EZKL framework introduces Metal bindings that significantly accelerate zero-knowledge operations on Apple silicon. The key improvement comes in multi-scalar multiplication (MSM), a core operation in ZK proof generation. Our benchmarks show approximately 2x faster MSM calculations on M-series Macs and recent iPhones.
This isn’t just an incremental improvement - it fundamentally changes what’s possible with on-device ZK proofs. Applications that previously required server-side computation can now run entirely on users’ devices.
Real-World Impact: Age Verification Use Case
To demonstrate these capabilities, we’ve worked with Inference Labs to develop a privacy-preserving age verification system. The system allows users to prove they meet age requirements without revealing their actual birthdate or sharing any personal data.
Here’s how it works:
- The verification model runs locally on the user’s device
- Personal data never leaves the device
- Only a cryptographic proof of age verification is shared
- The proof can be verified by any service without revealing underlying data
This addresses a growing need as jurisdictions worldwide implement stricter age verification requirements. For instance, Australia’s Online Safety Amendment Act 2024 requires platforms to verify users’ ages while limiting collection of government IDs. Our system provides a way to meet these requirements while maximizing privacy.
Competition on Subnet 2
In collaboration with Inference Labs, we’re launching a competition to optimize this age-verification application on their Subnet 2 Accelerator Program, part of the Bittensor network. Subnet 2 specializes in running cutting edge zero-knowledge proofs at scale, making it the perfect environment for pushing forward privacy-preserving computation.
The competitive environment it has created, along with the talent and capital it has attracted, makes it the perfect partner to run a competition.
How We’ll Evaluate Submissions
Our aim ultimately is to optimize this age verification system, in terms of proving times, memory usage and in actual performance for age verification. Pull requests submitted to https://github.com/zkonduit/ezkl will be evaluated on:
- The soundness of any proof system and argument changes must hold. Any changes to core cryptographic primitives should not affect the soundness of proofs.
- Proving times (lower is better, weighted at 30% of score), as determined by our Github CI which will be dedicated to the running of the proofs on Apple silicon.
- Memory usage (lower is better, weighted at 40% of score), as determined by our Github CI which will be dedicated to the running of the proofs on Apple silicon.
- Performance on a public dataset for age recognition (30%), as run in our Github CI.
The PRs should be tagged with the omron-subnet-competition-1
tag set up for the competition.
Rewards Structure
- First Place: 100 TAO for top optimizations to the EZKL framework
- Second Place: 56 TAO for runner-up optimizations
- Additional Bittensor network emission incentives for all participants
Competition Period: February 13th - April 27th, 2025
To Participate
Here’s how:
- Check out this writeup for instructions on how to get set up for the competition on Subnet 2.
- Join the subnet 2 developer community on Discord.
- Join our Discord.
- Check out our GitHub repository to get started with optimizations and to submit PRs at the end of the competition period.
- You can track the competition’s progress on this dashboard.
Looking Forward
This breakthrough in mobile ZK proof generation opens up numerous possibilities beyond age verification. Any application requiring private computation or verification can benefit:
- Identity verification without data sharing
- Local fraud detection
- Private credit scoring
- Compliance checks without data exposure
The ability to run ZK proofs efficiently on mobile devices removes a major barrier to adoption. It enables truly private, verifiable computation without sacrificing the user experience or introducing new trust assumptions.
By combining EZKL’s framework optimizations with Inference Labs’ Subnet 2 community, we’re creating a powerful platform for advancing privacy-preserving computation. We invite developers, researchers, and privacy advocates to join us in pushing the boundaries of what’s possible with zero-knowledge proofs on mobile devices.
EZKL is a framework for running zero-knowledge proofs on machine learning models. Join us in building the future of private, verifiable computation.