pub trait HashToGroup {
    type Input;
    type Group: GroupTrait<Self::Scalar>;
    type Scalar: ScalarTrait;

    // Required method
    fn hash_to_group(&self, input: &[Self::Input]) -> Self::Group;
}
Expand description

A trait for a hash function that projects the value to an affine group element.

Required Associated Types§

source

type Input

source

type Group: GroupTrait<Self::Scalar>

source

type Scalar: ScalarTrait

Required Methods§

source

fn hash_to_group(&self, input: &[Self::Input]) -> Self::Group

Returns the hash of the given input.

Object Safety§

This trait is not object safe.

Implementors§

source§

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

§

type Group = Group<E>

§

type Input = Field<E>

§

type Scalar = Scalar<E>