Skip to main content

lilium_transcript/
lib.rs

1//! transcript implementation.
2
3use ark_ff::Field;
4pub mod protocols;
5use params::ParamResolver;
6pub use transcript::*;
7pub use transcript_builder::*;
8
9pub mod instances;
10pub mod messages;
11pub mod params;
12mod transcript;
13mod transcript_builder;
14pub mod utils;
15
16pub trait Message<F: Field> {
17    fn len(vars: usize, param_resolver: &ParamResolver) -> usize;
18    fn to_field_elements(&self) -> Vec<F>;
19}
20
21#[derive(Debug, Clone)]
22pub enum Error {
23    SpongeError(sponge::error::Error),
24    /// Attempt to send a message when no more messages were expected
25    TranscriptFinished,
26    /// Unexpected message or number of challenges generated
27    UnexpectedMessage,
28}