Drop-in framework for mobile ZK proofs.
Built with ICICLE, this mobile-first proving framework brings privacy-preserving zero-knowledge proofs directly to iOS and Android. It’s lightweight, open-source, and optimized for fast, client-side performance with minimal setup required. IMP1 is built on ICICLE-SNARK, an end-to-end prover powered by ICICLE.
Note
Android support for arm64-v8a architecture only.
🔧 ICICLE Engine Inside
Accelerated proving, powered by ICICLE.
⚡ Fastest mobile proving experience
Up to 3x faster than Rapidsnark
🔓 Open-source (MIT license)
Free to use, fork, and build upon.
📦 Minimal dependencies
Lightweight and easy to plug in.
📱 Built for iOS and Android
Seamless integration across both major platforms.
⚠ Android support for arm64-v8a architecture only.
✅ Mobile-optimized Groth16 prover An efficient implementation of Groth16, built for mobile devices.
🚀 Parallel proof generation on iOS Generate multiple proofs simultaneously with configurable batch sizes for optimal performance.
- Download the xcframework
- Unzip & Drag imp1.xcframework into your iOS app.
- Use the
prove()
,parallel_prove()
, andverify()
functions from the framework’s public interface. SeePublicApi.h
for function definitions, usage comments, and required types. - More details in the platform-specific README
- Download the aar
- Drag imp1-0.2.2.aar into your Android app.
- Use the
prove()
,parallel_prove()
, andverify()
functions from the library’s native bridge. SeeNativeBridge.kt
for function definitions, usage comments, and required types. - More details in the platform-specific README
To get started quickly, check out the example iOS or Android App inside — a minimal project showing how to integrate and use imp1 in a real mobile environment.