Trait snarkvm_algorithms::traits::crh::CRH [−][src]
pub trait CRH: Clone + From<Self::Parameters> { type Output: Clone + Debug + Display + ToBytes + FromBytes + Eq + Hash + Default + Send + Sync + Copy; type Parameters: CRHParameters; const INPUT_SIZE_BITS: usize; fn setup<R: Rng>(r: &mut R) -> Self; fn hash(&self, input: &[u8]) -> Result<Self::Output, CRHError>; fn parameters(&self) -> &Self::Parameters; }
Associated Types
type Output: Clone + Debug + Display + ToBytes + FromBytes + Eq + Hash + Default + Send + Sync + Copy
type Parameters: CRHParameters
Associated Constants
const INPUT_SIZE_BITS: usize
Required methods
fn parameters(&self) -> &Self::Parameters
Implementors
impl<G: Group + ProjectiveCurve, const NUM_WINDOWS: usize, const WINDOW_SIZE: usize> CRH for BoweHopwoodPedersenCompressedCRH<G, NUM_WINDOWS, WINDOW_SIZE>
impl<G: Group + ProjectiveCurve, const NUM_WINDOWS: usize, const WINDOW_SIZE: usize> CRH for PedersenCompressedCRH<G, NUM_WINDOWS, WINDOW_SIZE>
impl<G: Group, const NUM_WINDOWS: usize, const WINDOW_SIZE: usize> CRH for BoweHopwoodPedersenCRH<G, NUM_WINDOWS, WINDOW_SIZE>