Trait reverie::transcript::Transcript
source · pub trait Transcript<D: Domain> {
const IS_PROVER: bool = false;
fn input(&mut self) -> Wire<D>;
fn reconstruct(&mut self, mask: D::Share) -> D::Recon;
fn correction(&mut self, corr: D::Recon) -> D::Recon;
fn zero_check(&mut self, recon: D::Recon);
fn new_mask(&mut self) -> D::Share;
fn online_hash(&self) -> [Hash; 8];
fn preprocess_hash(&self) -> [Hash; 8];
fn hash(&self) -> [Hash; 8] { ... }
}
Provided Associated Constants
Required Methods
fn input(&mut self) -> Wire<D>
sourcefn reconstruct(&mut self, mask: D::Share) -> D::Recon
fn reconstruct(&mut self, mask: D::Share) -> D::Recon
Reconstructs the share:
Proving
The transcript records the mask (each share send by each party)
Verifying (Online)
The transcript adds the missing share for the unopened players
Verifying (Preprocessing)
Nop, just return zero.
sourcefn correction(&mut self, corr: D::Recon) -> D::Recon
fn correction(&mut self, corr: D::Recon) -> D::Recon
Record correction:
Proving
The transcript records the correction
Verifying (Online)
The transcript provides the next correction (ignoring the input)
Verifying (Preprocessing)
The transcript records the correction
sourcefn zero_check(&mut self, recon: D::Recon)
fn zero_check(&mut self, recon: D::Recon)
Record if the reconstructed value is zero
Proving
Check if zero: if not the witness was invalid and the prover aborts
Verifying (Online)
Check if zero: if zero the proof is invalid.
Verifying (Preprocessing)
Nop. Ignore the input.
fn new_mask(&mut self) -> D::Share
sourcefn online_hash(&self) -> [Hash; 8]
fn online_hash(&self) -> [Hash; 8]
Return the commitment to the online phase
sourcefn preprocess_hash(&self) -> [Hash; 8]
fn preprocess_hash(&self) -> [Hash; 8]
Return the commitment to the preprocessing phase