Trait lambdaworks_crypto::hash::poseidon::Poseidon

source ·
pub trait Poseidon: PermutationParameters + Sealed {
    // Required methods
    fn hades_permutation(state: &mut [FE<Self::F>]);
    fn full_round(state: &mut [FE<Self::F>], rindex: usize);
    fn partial_round(state: &mut [FE<Self::F>], index: usize);
    fn hash(x: &FE<Self::F>, y: &FE<Self::F>) -> FE<Self::F>;
    fn hash_single(x: &FE<Self::F>) -> FE<Self::F>;
    fn hash_many(inputs: &[FE<Self::F>]) -> FE<Self::F>;
}

Required Methods§

source

fn hades_permutation(state: &mut [FE<Self::F>])

source

fn full_round(state: &mut [FE<Self::F>], rindex: usize)

source

fn partial_round(state: &mut [FE<Self::F>], index: usize)

source

fn hash(x: &FE<Self::F>, y: &FE<Self::F>) -> FE<Self::F>

source

fn hash_single(x: &FE<Self::F>) -> FE<Self::F>

source

fn hash_many(inputs: &[FE<Self::F>]) -> FE<Self::F>

Object Safety§

This trait is not object safe.

Implementors§