pub struct LabradorVerifier<'a> {
pub pp: &'a AjtaiInstances,
pub st: &'a Statement,
pub tr: &'a Challenges,
}
Fields§
§pp: &'a AjtaiInstances
§st: &'a Statement
§tr: &'a Challenges
Implementations§
Source§impl<'a> LabradorVerifier<'a>
impl<'a> LabradorVerifier<'a>
pub fn new( pp: &'a AjtaiInstances, st: &'a Statement, tr: &'a Challenges, ) -> Self
Sourcepub fn verify(
&self,
proof: &Proof,
ep: &EnvironmentParameters,
) -> Result<bool, VerifierError>
pub fn verify( &self, proof: &Proof, ep: &EnvironmentParameters, ) -> Result<bool, VerifierError>
All check conditions are from page 18
Sourcepub fn check_relation(
a_primes: &RqMatrix,
b_primes: &Rq,
g: &RqMatrix,
h: &RqMatrix,
) -> bool
pub fn check_relation( a_primes: &RqMatrix, b_primes: &Rq, g: &RqMatrix, h: &RqMatrix, ) -> bool
line 18, page 18: check if \sum(a_{ij} * g_{ij}) + \sum(h_{ii}) - b ?= 0 in the verifier process, page 18 from the paper.
param: a_primes: a_{ij}^{‘’(k)} param: b_primes: b^{‘’(k)} param: g: g_{ij} param: h: h_{ii}
return: true if the relation holds, false otherwise
Auto Trait Implementations§
impl<'a> Freeze for LabradorVerifier<'a>
impl<'a> RefUnwindSafe for LabradorVerifier<'a>
impl<'a> Send for LabradorVerifier<'a>
impl<'a> Sync for LabradorVerifier<'a>
impl<'a> Unpin for LabradorVerifier<'a>
impl<'a> UnwindSafe for LabradorVerifier<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more