Skip to main content

Crate airbender_host

Crate airbender_host 

Source
Expand description

§airbender-host Build status License: MIT OR Apache-2.0 rust nightly required host tooling

Documentation: API docs | Host program guide

[!WARNING] airbender-platform project is under active development and is in alpha state. Use at your own risk.

airbender-host is the host-side API for executing, proving, and verifying Airbender guest programs from native Rust applications.

§What It Provides

  • Program for loading a packaged dist/ directory and validating manifest hashes.
  • Inputs for serializing typed values or raw bytes into the canonical guest input word stream.
  • Runner, prover, and verifier builders covering transpiler execution plus dev, CPU, and GPU proving flows.
  • Runtime selection between 80-bit and 100-bit security for real proof and verification-key generation.
  • Cycle-marker utilities for profiling transpiler runs.

§Features

  • gpu-prover (default): exposes GPU proving and verification-key generation support.

Disable default features if you want a dev-only host binary without GPU support:

[dependencies]
airbender-host = { git = "https://github.com/matter-labs/airbender-platform", branch = "main", default-features = false }

Complete host-side examples live in examples/.

§License

Licensed under either Apache License, Version 2.0 or MIT license at your option.

Modules§

raw
Raw Airbender re-exports without stability guarantees.

Structs§

CpuProver
CPU prover wrapper that caches padded artifacts and worker threads.
CpuProverBuilder
Builder for creating a configured cached CPU prover.
CycleMarker
All marker snapshots captured from one transpiler execution run.
DevProof
Development proof emitted by the transpiler-based prover.
DevProver
Development prover that records transpiler execution metadata instead of generating a zk-proof.
DevProverBuilder
Builder for creating a configured development prover.
DevVerificationKey
Development verification key.
DevVerifier
Development verifier implementation.
DevVerifierBuilder
Builder for a development verifier.
ExecutionResult
Execution outcome for transpiler based runners.
FlamegraphConfig
Flamegraph collection options for execution runners.
GpuProver
GPU prover wrapper that owns and reuses a single UnrolledProver instance.
GpuProverBuilder
Builder for creating a configured cached GPU prover.
Inputs
Typed input builder for host-to-guest communication.
Mark
Snapshot of the cumulative cycle and delegation counters at one marker.
Program
Loaded Airbender program distribution, including manifest and artifacts.
ProveResult
Proof and receipt produced by prove.
RealProof
Real cryptographic proof emitted by CPU/GPU provers.
RealUnifiedVerificationKey
Unified (recursion) verification key wrapper.
RealUnrolledVerificationKey
Unrolled (base / recursion-unrolled) verification key wrapper.
RealVerifier
Real verifier implementation.
RealVerifierBuilder
Builder for a real verifier.
Receipt
Execution output captured from transpiler or prover results.
TranspilerRunner
Transpiler based execution runner.
TranspilerRunnerBuilder
Builder for creating a configured transpiler runner.
UnifiedVk
Unified verification key bundle for recursion.
UnrolledVk
Unrolled verification key bundle for base or recursion-unrolled layers.
VerificationRequest
Verification checks requested by the caller.

Enums§

HostError
Proof
Wrapper around all proof flavors produced by host provers.
ProverLevel
Maximum proof layer generated by the prover.
SecurityLevel
Cryptographic security target for real Airbender proofs.
VerificationKey
Wrapper around all verification-key flavors.

Constants§

DEFAULT_CYCLES

Traits§

Commit
Values that can be committed to the public output registers (x10..x17).
Prover
Host prover interface.
Runner
Host runner interface.
Verifier
Verifier interface shared by dev and real verifiers.

Functions§

compute_unified_vk
compute_unrolled_vk
resolve_cycles
Resolve the cycle budget from an explicit override or default.
verify_proof
verify_real_proof_with_vk
Verify a real proof envelope against a real verification key.
verify_unrolled_proof

Type Aliases§

Result