homomorphic_operations.hpp 775 B

1234567891011121314
  1. #ifndef __HOMOMORPHIC_OPERATIONS_HPP
  2. #define __HOMOMORPHIC_OPERATIONS_HPP
  3. #include "Bipoint.hpp"
  4. #include "Quadripoint.hpp"
  5. #include "PublicKey.hpp"
  6. #include "pairing.hpp"
  7. Bipoint<curvepoint_fp_t> bgn_homomorphic_addition(const Bipoint<curvepoint_fp_t>& a, const Bipoint<curvepoint_fp_t>& b, const PublicKey& public_key);
  8. Bipoint<twistpoint_fp2_t> bgn_homomorphic_addition(const Bipoint<twistpoint_fp2_t>& a, const Bipoint<twistpoint_fp2_t>& b, const PublicKey& public_key);
  9. Quadripoint bgn_homomorphic_addition(const Quadripoint& a, const Quadripoint& b, const PublicKey& public_key);
  10. Quadripoint bgn_homomorphic_multiplication(const Bipoint<curvepoint_fp_t>& a, const Bipoint<twistpoint_fp2_t>& b, const PublicKey& public_key);
  11. #endif /* __HOMOMORPHIC_OPERATIONS_HPP */