acvm_blackbox_solver/
lib.rs#![forbid(unsafe_code)]
#![cfg_attr(not(test), warn(unused_crate_dependencies, unused_extern_crates))]
use acir::BlackBoxFunc;
use thiserror::Error;
mod aes128;
mod bigint;
mod curve_specific_solver;
mod ecdsa;
mod hash;
mod logic;
pub use aes128::aes128_encrypt;
pub use bigint::{BigIntSolver, BigIntSolverWithId};
pub use curve_specific_solver::{BlackBoxFunctionSolver, StubbedBlackBoxSolver};
pub use ecdsa::{ecdsa_secp256k1_verify, ecdsa_secp256r1_verify};
pub use hash::{blake2s, blake3, keccakf1600, sha256_compression};
pub use logic::{bit_and, bit_xor};
#[derive(Clone, PartialEq, Eq, Debug, Error)]
pub enum BlackBoxResolutionError {
#[error("failed to solve blackbox function: {0}, reason: {1}")]
Failed(BlackBoxFunc, String),
#[error("{0}")]
AssertFailed(String),
}