Kuira Brings On-Device ZK Proving to Midnight Android Apps
The public alpha allows Android developers to combine local zero-knowledge proof generation with an embedded wallet, passkey-based access and Compact smart contracts. Private proving inputs remain on the device unless a developer explicitly selects a remote server.
By SongMarketCap
Updated:
Kuira Labs has released an Android SDK for building Midnight applications that generate zero-knowledge proofs directly on a user’s phone. Version 0.1.0-alpha05 is publicly available through Maven Central and packages the wallet, identity, contract runtime and proving components behind a single Gradle dependency.
The stack was demonstrated during the August 5 Fireside Dev Hang. Midnight, Cardano’s privacy-focused partner chain, also lists Kuira in its official developer documentation as a community-maintained mobile and embedded-wallet option.
Kuira Generates Midnight ZK Proofs on Android
Kuira generates zero-knowledge proofs locally on Android by default. An application builds the transaction, produces the proof and prepares it for submission without sending private proving inputs to an external service.
According to the technical documentation, the SDK uses Midnight’s Rust-based midnight-zkir proving engine, compiled as native Android code and accessed through JNI rather than a WebAssembly environment.
Developers can manually select a remote proof server when a circuit is too demanding for the target device. The SDK does not make that switch automatically. If local proving is selected and the required keys are unavailable, the process fails instead of transmitting private inputs to a server.
Wallet proving keys require approximately 33 MB and can be bundled with the application or downloaded and cached during setup. Once stored, proofs can be generated without connecting to a proof server, although submitting the completed transaction still requires network access.
Kuira has not published universal proving-time or memory benchmarks. Performance varies by circuit and Android hardware, so the current documentation does not support a single verified speed figure across devices.
Embedded Wallet Supports $NIGHT, DUST and Passkeys
The SDK includes a self-custodial wallet within the application’s own process. Users can interact with a Midnight application without first installing a separate wallet.
Kuira supports shielded and unshielded balances, transaction synchronization, DUST regeneration and $NIGHT transfers. It also includes the Compact runtime required to deploy and call Midnight smart contracts from an Android application.
Wallet access uses a passkey-based system called Sigil. Biometric confirmation or a device credential unlocks the passkey, which protects the identity and wallet setup process without requiring a recovery phrase during initial onboarding.
Users can later reveal an optional 24-word recovery phrase. The current Sigil architecture can also restore access through a synchronized passkey, but that route depends on the same Google account and application domain.
Kuira plans to address wallet portability between applications and recovery across different Google accounts through Sigil V2. That architecture remains on the project’s roadmap and is not included in the current alpha.
Developers can test the stack through runnable examples, including a basic counter application and Midnight Kicks, a commit-reveal game in which moves are proven on the phone.
Kuira Alpha Is Public but Not Production-Ready
The July 14 alpha05 release added typed Compact contract reads, constructor arguments, support for multiple contracts and an end-to-end path for moving unshielded funds.
The SDK is distributed through Maven Central under an Apache 2.0 license. Its public GitHub repository contains documentation and release infrastructure, while the primary SDK repository remains private. Kotlin source packages accompany the compiled Android artifacts, allowing developers to inspect and debug the published implementation through Android Studio or IntelliJ.
Kuira’s release documentation classifies the SDK as alpha. Its APIs may change between releases, production use is not recommended and security fixes are applied only to the latest alpha version.
Android is currently the only supported platform. Kuira lists iOS and React Native integrations as planned additions, but neither is publicly available.
Alpha05 changes the immediate workflow for Midnight mobile development: teams can now test local proving and embedded wallet functionality through a published Android dependency instead of assembling a custom mobile stack. Production deployment remains outside Kuira’s current recommendation until the SDK progresses beyond its alpha release line.