Verify the proof except the pairing equations. This is useful when doing several verifications (of this protocol or others) and the pairing equations are combined in a randomized pairing check.
(
&self,
revealed_msgs: &BTreeMap<usize, E::ScalarField>,
challenge: &E::ScalarField,
g1: E::G1Affine,
h_0: E::G1Affine,
h: Vec<E::G1Affine>,
mi
| 527 | /// Verify the proof except the pairing equations. This is useful when doing several verifications (of this |
| 528 | /// protocol or others) and the pairing equations are combined in a randomized pairing check. |
| 529 | fn verify_except_pairings( |
| 530 | &self, |
| 531 | revealed_msgs: &BTreeMap<usize, E::ScalarField>, |
| 532 | challenge: &E::ScalarField, |
| 533 | g1: E::G1Affine, |
| 534 | h_0: E::G1Affine, |
| 535 | h: Vec<E::G1Affine>, |
| 536 | missing_responses: Option<BTreeMap<usize, E::ScalarField>>, |
| 537 | ) -> Result<(), BBSPlusError> { |
| 538 | if self.A_prime.is_zero() { |
| 539 | return Err(BBSPlusError::ZeroSignature); |
| 540 | } |
| 541 | self.verify_schnorr_proofs(revealed_msgs, challenge, g1, h_0, h, missing_responses) |
| 542 | } |
| 543 | |
| 544 | pub fn verify_schnorr_proofs( |
| 545 | &self, |
no test coverage detected