anoma-rm-risc0

Crates.ioanoma-rm-risc0
lib.rsanoma-rm-risc0
version1.0.0
created_at2026-01-13 05:40:32.108521+00
updated_at2026-01-13 05:40:32.108521+00
descriptionAnoma Resource Machine Implementation using RISC0 zkVM
homepage
repositoryhttps://github.com/anoma/arm-risc0
max_upload_size
id2039392
size1,737,071
Christopher Goes (cwgoes)

documentation

README

Anoma Resource Machine based on RISC0

A Rust implementation of the Anoma Shielded Resource Machine using RISC0 zkVM for zero-knowledge proofs.

Overview

The anoma-rm-risc0 crate provides the core functionality of a resource-based state machine designed for the Anoma protocol. It implements:

  • Resource Management: Defines and manages resources with associated logic
  • Transaction Processing: Builds and validates transactions with compliance and logic checks
  • Proof Generation: Creates zero-knowledge proofs for transaction validity using RISC0
  • Aggregation: Enables proof aggregation and composition (single-run and IVC-based)

Key Components

Core Modules

  • resource: Resource definition and serialization
  • resource_logic: Custom logic and constraints for resources
  • transaction: Transaction structure and validation
  • action: Actions within transactions and their hierarchical organization
  • compliance: Compliance verification logic
  • logic_proof: Zero-knowledge proof structures for resource logic
  • delta_proof: Balance proof for state changes

Optional Modules

  • aggregation: Proof aggregation (batch and sequential IVC)

Features

The crate supports several features to control compilation and functionality:

  • transaction (default): Enables transaction processing and compliance checking
  • prove (default): Enables proof generation with RISC0
  • bonsai: Enables remote proof execution via Bonsai
  • cuda: Enables CUDA acceleration for proofs
  • aggregation: Enables proof aggregation support

Usage

Add to your Cargo.toml:

# Default configuration
anoma-rm-risc0 ="1.0.0"

# Proof aggregation (a single succinct proof per transaction)
anoma-rm-risc0 ={ version = "1.0.0", features = ["aggregation"] }

# Logic-circuit-only usage
anoma-rm-risc0 ={ version = "1.0.0", default-features = false }

Documentation

For more information, refer to:

License

Licensed under the Apache License 2.0. See LICENSE for details.

Commit count: 328

cargo fmt