pub trait HashMany {
    type Input;
    type Output;

    fn hash_many(
        &self,
        input: &[Self::Input],
        num_outputs: u16
    ) -> Vec<Self::Output, Global> ; }
Expand description

A trait for a hash function that produces multiple outputs.

Required Associated Types§

Required Methods§

source

fn hash_many(
    &self,
    input: &[Self::Input],
    num_outputs: u16
) -> Vec<Self::Output, Global>

Returns the hash of the given input.

Implementations on Foreign Types§

source§

impl<E, const RATE: usize> HashMany for Poseidon<E, RATE>where
    E: Environment,

source§

fn hash_many(
    &self,
    input: &[<Poseidon<E, RATE> as HashMany>::Input],
    num_outputs: u16
) -> Vec<<Poseidon<E, RATE> as HashMany>::Output, Global>

Returns the cryptographic hash for a list of field elements as input, and returns the specified number of field elements as output.

§

type Input = Field<E>

§

type Output = Field<E>

Implementors§