Skip to main content

Crate samaharam

Crate samaharam 

Source
Expand description

§Samaharam (സമാഹാരം)

Scalable heterogeneous zero-knowledge proof aggregation for EVM chains.

§Features

  • Heterogeneous aggregation: Aggregate proofs from different circuits
  • EVM-compatible: BN254 curve with Solidity verifier generation
  • Type-safe: TypeState pattern for compile-time proof lifecycle
  • Scalable: Parallel processing and batched aggregation

§Quick Start

use samaharam::{Aggregator, Bn254};

let aggregator = Aggregator::<Bn254>::builder()
    .with_srs(srs)
    .max_batch_size(32)
    .build()?;

let vk_id = aggregator.register_circuit("transfer", vk);
let proof = Proof::new(data, public_inputs, vk_id);
let verified = proof.verify(&aggregator.registry())?;
aggregator.submit(verified)?;

let aggregated = aggregator.aggregate()?;

Re-exports§

pub use aggregator::Aggregator;
pub use backend::bn254::Bn254;
pub use config::AggregatorBuilder;
pub use crypto::TRANSCRIPT_VERSION;
pub use error::ConfigError;
pub use error::Error;
pub use proof::Aggregated;
pub use proof::Batched;
pub use proof::Pending;
pub use proof::Proof;
pub use proof::Verified;
pub use registry::VkId;
pub use registry::VkRegistry;
pub use traits::PairingEngine;

Modules§

adapters
External proof adapters for aggregating proofs from other systems. External proof adapters for aggregation.
aggregator
Main aggregator for heterogeneous proof aggregation.
backend
Curve backends for proof aggregation.
circuit
Aggregation circuit for heterogeneous proof verification.
client
High-level client API for proof aggregation.
config
Aggregator configuration using the Builder pattern.
crypto
Cryptographic primitives for proof aggregation.
error
Error types for samaharam.
proof
Proof state types using the TypeState pattern.
registry
Verification key registry for heterogeneous proof types.
srs
SRS utilities for loading trusted setup ceremony data. SRS (Structured Reference String) utilities.
traits
Core traits for proof aggregation.

Type Aliases§

Bn254Aggregator
Type alias for the primary BN254-based aggregator