Trait prio::vdaf::Client

source ·
pub trait Client<const NONCE_SIZE: usize>: Vdaf {
    // Required method
    fn shard(
        &self,
        measurement: &Self::Measurement,
        nonce: &[u8; NONCE_SIZE]
    ) -> Result<(Self::PublicShare, Vec<Self::InputShare>), VdafError>;
}
Expand description

The Client’s role in the execution of a VDAF.

Required Methods§

source

fn shard( &self, measurement: &Self::Measurement, nonce: &[u8; NONCE_SIZE] ) -> Result<(Self::PublicShare, Vec<Self::InputShare>), VdafError>

Shards a measurement into a public share and a sequence of input shares, one for each Aggregator.

Implements Vdaf::shard from VDAF.

Object Safety§

This trait is not object safe.

Implementors§

source§

impl Client<16> for Vdaf

Available on crate feature test-util only.
source§

impl Client<16> for Prio2

Available on crate features crypto-dependencies and experimental only.
source§

impl<P: Xof<SEED_SIZE>, const SEED_SIZE: usize> Client<16> for Poplar1<P, SEED_SIZE>

Available on crate features crypto-dependencies and experimental only.
source§

impl<T, P, const SEED_SIZE: usize> Client<16> for Prio3<T, P, SEED_SIZE>
where T: Type, P: Xof<SEED_SIZE>,