pub trait HashMany {
type Input;
type Output;
// Required method
fn hash_many(
&self,
input: &[Self::Input],
num_outputs: u16,
) -> Vec<Self::Output>;
}
Expand description
A trait for a hash function that produces multiple outputs.
Required Associated Types§
Required Methods§
Implementations on Foreign Types§
Source§impl<E, const RATE: usize> HashMany for Poseidon<E, RATE>where
E: Environment,
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>
fn hash_many( &self, input: &[<Poseidon<E, RATE> as HashMany>::Input], num_outputs: u16, ) -> Vec<<Poseidon<E, RATE> as HashMany>::Output>
Returns the cryptographic hash for a list of field elements as input, and returns the specified number of field elements as output.