MCPcopy Create free account
hub / github.com/docknetwork/crypto / _verify

Method _verify

bbs_plus/src/proof_23_cdl.rs:422–449  ·  view source on GitHub ↗
(
        &self,
        revealed_msgs: &BTreeMap<usize, E::ScalarField>,
        challenge: &E::ScalarField,
        pk: impl Into<PreparedPublicKeyG2<E>>,
        params: impl Into<PreparedSignature

Source from the content-addressed store, hash-verified

420 }
421
422 pub fn _verify(
423 &self,
424 revealed_msgs: &BTreeMap<usize, E::ScalarField>,
425 challenge: &E::ScalarField,
426 pk: impl Into<PreparedPublicKeyG2<E>>,
427 params: impl Into<PreparedSignatureParams23G1<E>>,
428 missing_responses: Option<BTreeMap<usize, E::ScalarField>>,
429 ) -> Result<(), BBSPlusError> {
430 let params = params.into();
431 let g1 = params.g1;
432 let g2 = params.g2;
433 let h = params.h;
434 self.verify_except_pairings(revealed_msgs, challenge, g1, h, missing_responses)?;
435
436 // Verify the randomized signature
437 if !E::multi_pairing(
438 [
439 E::G1Prepared::from(self.A_bar),
440 E::G1Prepared::from(-(self.B_bar.into_group())),
441 ],
442 [pk.into().0, g2],
443 )
444 .is_zero()
445 {
446 return Err(BBSPlusError::PairingCheckFailed);
447 }
448 Ok(())
449 }
450
451 pub fn _verify_with_randomized_pairing_checker(
452 &self,

Callers 2

verifyMethod · 0.45
verify_partialMethod · 0.45

Calls 2

is_zeroMethod · 0.80

Tested by

no test coverage detected