Skip to content

Commit

Permalink
Consider using multipairings
Browse files Browse the repository at this point in the history
See issue #192
  • Loading branch information
cygnusv committed Sep 20, 2024
1 parent f666bb2 commit 8764778
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 2 deletions.
2 changes: 1 addition & 1 deletion ferveo-tdec/src/decryption.rs
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ impl<E: Pairing> ValidatorShareChecksum<E> {
return false;
}

// TODO: use multipairing here (h_inv)
// TODO: use multipairing here (h_inv) - Issue #192
// e(C_i, ek_i) == e(U, H)
if E::pairing(self.checksum, *validator_public_key)
!= E::pairing(ciphertext.commitment, *h)
Expand Down
3 changes: 2 additions & 1 deletion ferveo/src/pvss.rs
Original file line number Diff line number Diff line change
Expand Up @@ -208,6 +208,7 @@ impl<E: Pairing, T> PubliclyVerifiableSS<E, T> {
pvss_params.g,
self.sigma, // h^s
)
// TODO: multipairing? - Issue #192
}

/// Part of checking the validity of an aggregated PVSS transcript
Expand Down Expand Up @@ -260,7 +261,7 @@ pub fn do_verify_full<E: Pairing>(
// We verify that e(G, Y_i) = e(A_i, ek_i) for validator i
// See #4 in 4.2.3 section of https://eprint.iacr.org/2022/898.pdf
// e(G,Y) = e(A, ek)
// TODO: consider using multipairing
// TODO: consider using multipairing - Issue #192
let is_valid = E::pairing(pvss_params.g, *y_i) == E::pairing(a_i, ek_i);
if !is_valid {
return Ok(false);
Expand Down

0 comments on commit 8764778

Please sign in to comment.