[package] name = "halo2-axiom" version = "0.4.4" authors = [ "Sean Bowe ", "Ying Tong Lai ", "Daira Hopwood ", "Jack Grigg ", "Privacy Scaling Explorations team", "Taiko Labs", "Intrinsic Technologies", ] edition = "2021" rust-version = "1.73.0" description = """ Fast PLONK-based zero-knowledge proving system. This is a fork of , which is itself a fork of ZCash's "halo2_proofs" crate. This fork uses the KZG polynomial commitment scheme for the proving backend, which requires a one-time universal trusted setup. Publishing this crate for better versioning in Axiom's production usage. This crate requires rust nightly to build. """ license = "MIT OR Apache-2.0" repository = "https://github.com/axiom-crypto/halo2" # documentation = "https://docs.rs/halo2_proofs" readme = "README.md" categories = ["cryptography"] keywords = ["halo", "proofs", "zkp", "zkSNARKs"] autoexamples = false [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs", "--html-in-header", "katex-header.html"] [[bench]] name = "arithmetic" harness = false [[bench]] name = "commit_zk" harness = false [[bench]] name = "hashtocurve" harness = false [[bench]] name = "plonk" harness = false [[bench]] name = "dev_lookup" harness = false [[bench]] name = "fft" harness = false [dependencies] itertools = "0.11" backtrace = { version = "0.3", optional = true } crossbeam = "0.8" ff = "0.13" group = "0.13" pairing = "0.23" halo2curves = { package = "halo2curves-axiom", version = "0.5.0", default-features = false, features = ["bits", "bn256-table", "derive_serde"] } rand = "0.8" rand_core = { version = "0.6", default-features = false } tracing = "0.1" blake2b_simd = "1" rustc-hash = "1.1" sha3 = "0.10" ark-std = { version = "0.3.0", features = ["print-trace"], optional = true } maybe-rayon = { version = "0.1.0", default-features = false } # Developer tooling dependencies plotters = { version = "0.3.0", default-features = false, optional = true } tabbycat = { version = "0.1", features = ["attributes"], optional = true } # Legacy circuit compatibility halo2_legacy_pdqsort = { version = "0.1.0", optional = true } [dev-dependencies] assert_matches = "1.5" criterion = "0.3" gumdrop = "0.8" proptest = "1" rand_core = { version = "0.6", features = ["getrandom"] } rand_chacha = "0.3.1" ark-std = { version = "0.3.0", features = ["print-trace"] } [target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dev-dependencies] getrandom = { version = "0.2", features = ["js"] } [features] default = ["batch", "multicore", "circuit-params"] multicore = ["maybe-rayon/threads"] dev-graph = ["plotters", "tabbycat"] test-dev-graph = ["dev-graph", "plotters/bitmap_backend", "plotters/bitmap_encoder", "plotters/ttf"] gadget-traces = ["backtrace"] # thread-safe-region = [] sanity-checks = [] batch = ["rand/getrandom"] profile = ["dep:ark-std"] asm = ["halo2curves/asm"] circuit-params = [] [lib] bench = false [[example]] name = "serialization" [[example]] name = "shuffle"