Skip to main content

sl_mpc_vrf/
lib.rs

1// Copyright (c) Silence Laboratories Pte. Ltd. All Rights Reserved.
2// This software is licensed under the Silence Laboratories License Agreement.
3
4//! Threshold MPC VRF protocols on Ristretto.
5//!
6//! Host crates (`multi-party-schnorr`, `dkls23-ll`) wrap [`eval::Context`] round methods in their
7//! preferred API (`Round::process` vs `generate_msg*` / `handle_msg*`).
8
9pub mod crypto;
10pub mod dh_tuple;
11pub mod dkg;
12pub mod eval;
13pub mod messages;
14pub mod transcript;
15pub mod types;
16
17pub use dh_tuple::{
18    dh_tuple_transcript, DhTuplePoints, DhTupleProof, DH_TUPLE_CHALLENGE_LABEL,
19    DH_TUPLE_TRANSCRIPT_LABEL,
20};
21pub use dkg::{
22    Context as VrfDkgContext, Party as VrfDkgParty, P2pShare, VrfKeygenError, VrfKeygenMsg1,
23    VrfKeygenMsg2, VrfKeyshare,
24};
25pub use eval::{Context as VrfEvalContext, VrfOutput};
26pub use messages::{VrfMsg0, VrfMsg1};
27pub use transcript::Sha256Transcript;
28pub use types::{SessionId, VrfError};