Crate prio

source · []
Expand description


Implementation of the Prio private data aggregation protocol. For now we only support 0 / 1 vectors.


This module provides wrappers around internal components of this crate that we want to benchmark, but which we don’t want to expose in the public API.

The Prio v2 client. Only 0 / 1 vectors are supported for now.

Module codec provides support for encoding and decoding messages to or from the TLS wire encoding, as specified in RFC 8446, Section 3. It provides traits that can be implemented on values that need to be encoded or decoded, as well as utility functions for encoding sequences of values.

Utilities for ECIES encryption / decryption used by the Prio client and server.

Finite field arithmetic.

Implementation of the generic Fully Linear Proof (FLP) system specified in [draft-irtf-cfrg-vdaf-01]. This is the main building block of Prio3.

The Prio v2 server. Only 0 / 1 vectors are supported for now.

Module test_vector generates test vectors of serialized Prio inputs and support for working with test vectors, enabling backward compatibility testing.

Utility functions for handling Prio stuff.

Verifiable Distributed Aggregation Functions (VDAFs) as described in [draft-irtf-cfrg-vdaf-01].