1234567891011121314151617181920212223242526 |
- #ifndef __PUBLICKEY_HPP
- #define __PUBLICKEY_HPP
- #include "Bipoint.hpp"
- class PublicKey
- {
- public:
- PublicKey() = default;
- PublicKey(const Bipoint<curvepoint_fp_t>& a, const Bipoint<twistpoint_fp2_t>& b, const Bipoint<curvepoint_fp_t>& c, const Bipoint<twistpoint_fp2_t>& d);
-
- void set(const Bipoint<curvepoint_fp_t>& a, const Bipoint<twistpoint_fp2_t>& b, const Bipoint<curvepoint_fp_t>& c, const Bipoint<twistpoint_fp2_t>& d);
-
- Bipoint<curvepoint_fp_t> get_bipoint_curvegen() const;
- Bipoint<twistpoint_fp2_t> get_bipoint_twistgen() const;
- Bipoint<curvepoint_fp_t> get_bipoint_curve_groupelt() const;
- Bipoint<twistpoint_fp2_t> get_bipoint_twist_groupelt() const;
-
- private:
- Bipoint<curvepoint_fp_t> bipoint_curvegen; // subgroup_gen(i1g, j1g)
- Bipoint<twistpoint_fp2_t> bipoint_twistgen; // subgroup_gen(i2h, j2h)
- Bipoint<curvepoint_fp_t> bipoint_curve_groupelt; // u
- Bipoint<twistpoint_fp2_t> bipoint_twist_groupelt; // v
- };
- #endif
|