Skip to main content

binius_hash_prover/
lib.rs

1// Copyright 2026 The Binius Developers
2
3#![warn(rustdoc::missing_crate_level_docs)]
4
5//! Batched hash and Merkle tree construction for a Binius prover.
6//!
7//! Proving folds whole Merkle layers at once, so every hash here takes a batch of independent
8//! messages per call and runs it through whatever vector kernel the target has.
9//!
10//! Nothing a verifier links against depends on this crate.
11//! Every batched path is pinned byte-for-byte to the sequential one it stands in for, which is
12//! what lets the two sides of a proof commit to the same tree.
13
14pub mod binary_merkle_tree;
15pub mod blake3;
16pub mod parallel_compression;
17pub mod parallel_digest;
18pub mod sha256;
19pub mod suite;
20
21pub use binary_merkle_tree::BinaryMerkleTree;
22pub use blake3::{PortableBlake3ParallelCompression, PortableBlake3ParallelDigest};
23pub use parallel_compression::{ParallelCompressionAdaptor, ParallelPseudoCompression};
24pub use parallel_digest::{
25	MultiDigest, ParallelDigest, ParallelDigestAdapter, ParallelMultidigestImpl,
26};
27pub use sha256::{ParallelSha256Compression, ParallelSha256Digest};
28pub use suite::ParallelHashSuite;