Skip to main content
Version: 0.2.0

Architectures

Different platforms use different architectures. This section will guide you in selecting the appropriate architecture for your target platform.

iOS

Current support targetDescriptionExamples
aarch64-apple-ios64-bit iOS devices (iPhone/iPad)iPhone 11+, iPad Pro
aarch64-apple-ios-simARM64 iOS simulator on Apple Silicon MacsSimulator on M1/M2 Mac
x86_64-apple-iosx86_64 iOS simulator on Intel MacsSimulator on Intel Mac

Android

Current support targetDescriptionExamples
x86_64-linux-android64-bit Android emulators (x86_64 architecture)Emulator on x86_64 host
i686-linux-android32-bit Android emulators (x86 architecture, legacy)Legacy Android Emulator
armv7-linux-androideabi32-bit ARM devices (older Android smartphones/tablets)Nexus 7, Galaxy S5
aarch64-linux-androids64-bit ARM devices (modern Android smartphones/tablets)Pixel 6, Galaxy S22

Web (WASM)

Current support targetDescriptionExamples
wasm32-unknown-unknownBare WebAssembly targetBrowser apps

Proving Systems Currently Supported

Current support targetCircom
(rust-witness
arkworks)
Circom
(witnesscalc
rapidsnark)
Halo2
(Plonkish)
Noir
(barretenberg)
aarch64-apple-ios
aarch64-apple-ios-sim
x86_64-apple-ios
x86_64-linux-android
i686-linux-android
armv7-linux-androideabi
aarch64-linux-androids
wasm32-unknown-unknown rust-witness ❌ / ark-works ✅1

Footnotes

  1. The current Mopro stack doesn't support compiling Barretenberg directly to WebAssembly. However, you can still use @aztec/bb.js to generate proofs in the browser. Similar to the Circom prover, you can use snarkjs to generate a witness directly in the browser.