Clearmatics Libff  0.1
C++ library for Finite Fields and Elliptic Curves
bls12_381_init.hpp
Go to the documentation of this file.
1 
8 #ifndef BLS12_381_INIT_HPP_
9 #define BLS12_381_INIT_HPP_
15 
16 namespace libff
17 {
18 
19 const mp_size_t bls12_381_r_bitcount = 255;
20 const mp_size_t bls12_381_q_bitcount = 381;
21 
22 const mp_size_t bls12_381_r_limbs =
23  (bls12_381_r_bitcount + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS;
24 const mp_size_t bls12_381_q_limbs =
25  (bls12_381_q_bitcount + GMP_NUMB_BITS - 1) / GMP_NUMB_BITS;
26 
29 
37 
38 // parameters for the curve E/Fq : y^2 = x^3 + b
41 // parameters for the twisted curve E'/Fq2 : y^2 = x^3 + b/xi
48 
49 // parameters for pairing
55 
57 
58 class bls12_381_G1;
59 class bls12_381_G2;
60 
61 } // namespace libff
62 
63 #endif // BLS12_381_INIT_HPP_
libff::Fp6_3over2_model
Definition: fp6_3over2.hpp:19
libff::bls12_381_GT
bls12_381_Fq12 bls12_381_GT
Definition: bls12_381_init.hpp:36
libff::bls12_381_ate_is_loop_count_neg
bool bls12_381_ate_is_loop_count_neg
Definition: bls12_381_init.cpp:21
libff::bls12_381_twist_mul_by_b_c1
bls12_381_Fq bls12_381_twist_mul_by_b_c1
Definition: bls12_381_init.cpp:16
libff::bls12_381_final_exponent_z
bigint< bls12_381_q_limbs > bls12_381_final_exponent_z
Definition: bls12_381_init.cpp:23
libff::bls12_381_ate_loop_count
bigint< bls12_381_q_limbs > bls12_381_ate_loop_count
Definition: bls12_381_init.cpp:20
libff::bls12_381_Fr
Fp_model< bls12_381_r_limbs, bls12_381_modulus_r > bls12_381_Fr
Definition: bls12_381_init.hpp:30
libff
Definition: ffi.cpp:8
libff::bls12_381_twist_coeff_b
bls12_381_Fq2 bls12_381_twist_coeff_b
Definition: bls12_381_init.cpp:14
libff::bls12_381_Fq2
Fp2_model< bls12_381_q_limbs, bls12_381_modulus_q > bls12_381_Fq2
Definition: bls12_381_init.hpp:32
libff::bls12_381_twist_mul_by_q_X
bls12_381_Fq2 bls12_381_twist_mul_by_q_X
Definition: bls12_381_init.cpp:17
libff::bls12_381_Fq
Fp_model< bls12_381_q_limbs, bls12_381_modulus_q > bls12_381_Fq
Definition: bls12_381_init.hpp:31
fp.hpp
libff::bls12_381_G1
Definition: bls12_381_g1.hpp:21
libff::bls12_381_twist_mul_by_q_Y
bls12_381_Fq2 bls12_381_twist_mul_by_q_Y
Definition: bls12_381_init.cpp:18
libff::bls12_381_r_limbs
const mp_size_t bls12_381_r_limbs
Definition: bls12_381_init.hpp:22
libff::init_bls12_381_params
void init_bls12_381_params()
Definition: bls12_381_init.cpp:26
libff::bls12_381_trace_of_frobenius
bigint< bls12_381_r_limbs > bls12_381_trace_of_frobenius
Definition: bls12_381_init.cpp:12
fp6_3over2.hpp
libff::bls12_381_modulus_q
bigint< bls12_381_q_limbs > bls12_381_modulus_q
Definition: bls12_381_init.cpp:9
libff::bls12_381_twist_mul_by_b_c0
bls12_381_Fq bls12_381_twist_mul_by_b_c0
Definition: bls12_381_init.cpp:15
libff::bls12_381_Fq6
Fp6_3over2_model< bls12_381_q_limbs, bls12_381_modulus_q > bls12_381_Fq6
Definition: bls12_381_init.hpp:33
libff::bls12_381_q_bitcount
const mp_size_t bls12_381_q_bitcount
Definition: bls12_381_init.hpp:20
libff::bls12_381_r_bitcount
const mp_size_t bls12_381_r_bitcount
Definition: bls12_381_init.hpp:19
fp2.hpp
libff::bls12_381_q_limbs
const mp_size_t bls12_381_q_limbs
Definition: bls12_381_init.hpp:24
libff::bls12_381_modulus_r
bigint< bls12_381_r_limbs > bls12_381_modulus_r
Definition: bls12_381_init.cpp:8
fp12_2over3over2.hpp
libff::bigint
Definition: bigint.hpp:20
public_params.hpp
libff::Fp12_2over3over2_model
Definition: fp12_2over3over2.hpp:20
libff::bls12_381_final_exponent
bigint< 12 *bls12_381_q_limbs > bls12_381_final_exponent
Definition: bls12_381_init.cpp:22
libff::Fp_model
Definition: fp.hpp:20
libff::Fp2_model< bls12_381_q_limbs, bls12_381_modulus_q >
libff::bls12_381_Fq12
Fp12_2over3over2_model< bls12_381_q_limbs, bls12_381_modulus_q > bls12_381_Fq12
Definition: bls12_381_init.hpp:35
libff::bls12_381_coeff_b
bls12_381_Fq bls12_381_coeff_b
Definition: bls12_381_init.cpp:11
libff::bls12_381_twist
bls12_381_Fq2 bls12_381_twist
Definition: bls12_381_init.cpp:13
libff::bls12_381_final_exponent_is_z_neg
bool bls12_381_final_exponent_is_z_neg
Definition: bls12_381_init.cpp:24
libff::bls12_381_G2
Definition: bls12_381_g2.hpp:21