Trait snarkvm_marlin::fiat_shamir::traits::FiatShamirRng[][src]

pub trait FiatShamirRng<TargetField: PrimeField, BaseField: PrimeField>: RngCore {
    fn new() -> Self;
fn absorb_nonnative_field_elements(
        &mut self,
        elements: &[TargetField],
        ty: OptimizationType
    );
fn absorb_native_field_elements<T: ToConstraintField<BaseField>>(
        &mut self,
        elements: &[T]
    );
fn absorb_bytes(&mut self, elements: &[u8]);
fn squeeze_nonnative_field_elements(
        &mut self,
        num: usize,
        ty: OptimizationType
    ) -> Result<Vec<TargetField>, FiatShamirError>;
fn squeeze_native_field_elements(
        &mut self,
        num: usize
    ) -> Result<Vec<BaseField>, FiatShamirError>;
fn squeeze_128_bits_nonnative_field_elements(
        &mut self,
        num: usize
    ) -> Result<Vec<TargetField>, FiatShamirError>; }
Expand description

Trait for a Fiat-Shamir RNG.

Required methods

Initializes an RNG.

Takes in field elements.

Takes in field elements.

Takes in bytes.

Takes out field elements.

Takes in field elements.

Takes out field elements of 128 bits.

Implementors