Clearmatics Libff
0.1
C++ library for Finite Fields and Elliptic Curves
|
#include <cassert>
#include <libff/algebra/curves/mnt/mnt6/mnt6_g1.hpp>
#include <libff/algebra/curves/mnt/mnt6/mnt6_g2.hpp>
#include <libff/algebra/curves/mnt/mnt6/mnt6_init.hpp>
#include <libff/algebra/curves/mnt/mnt6/mnt6_pairing.hpp>
#include <libff/algebra/scalar_multiplication/wnaf.hpp>
#include <libff/common/profiling.hpp>
Go to the source code of this file.
Classes | |
struct | libff::extended_mnt6_G2_projective |
Namespaces | |
libff | |
Functions | |
std::ostream & | libff::operator<< (std::ostream &out, const mnt6_ate_G1_precomp &prec_P) |
std::istream & | libff::operator>> (std::istream &in, mnt6_ate_G1_precomp &prec_P) |
std::ostream & | libff::operator<< (std::ostream &out, const mnt6_ate_dbl_coeffs &dc) |
std::istream & | libff::operator>> (std::istream &in, mnt6_ate_dbl_coeffs &dc) |
std::ostream & | libff::operator<< (std::ostream &out, const mnt6_ate_add_coeffs &ac) |
std::istream & | libff::operator>> (std::istream &in, mnt6_ate_add_coeffs &ac) |
std::ostream & | libff::operator<< (std::ostream &out, const mnt6_ate_G2_precomp &prec_Q) |
std::istream & | libff::operator>> (std::istream &in, mnt6_ate_G2_precomp &prec_Q) |
mnt6_Fq6 | libff::mnt6_final_exponentiation_last_chunk (const mnt6_Fq6 &elt, const mnt6_Fq6 &elt_inv) |
mnt6_Fq6 | libff::mnt6_final_exponentiation_first_chunk (const mnt6_Fq6 &elt, const mnt6_Fq6 &elt_inv) |
mnt6_GT | libff::mnt6_final_exponentiation (const mnt6_Fq6 &elt) |
mnt6_affine_ate_G1_precomputation | libff::mnt6_affine_ate_precompute_G1 (const mnt6_G1 &P) |
mnt6_affine_ate_G2_precomputation | libff::mnt6_affine_ate_precompute_G2 (const mnt6_G2 &Q) |
mnt6_Fq6 | libff::mnt6_affine_ate_miller_loop (const mnt6_affine_ate_G1_precomputation &prec_P, const mnt6_affine_ate_G2_precomputation &prec_Q) |
void | libff::doubling_step_for_flipped_miller_loop (extended_mnt6_G2_projective ¤t, mnt6_ate_dbl_coeffs &dc) |
void | libff::mixed_addition_step_for_flipped_miller_loop (const mnt6_Fq3 base_X, const mnt6_Fq3 base_Y, const mnt6_Fq3 base_Y_squared, extended_mnt6_G2_projective ¤t, mnt6_ate_add_coeffs &ac) |
mnt6_ate_G1_precomp | libff::mnt6_ate_precompute_G1 (const mnt6_G1 &P) |
mnt6_ate_G2_precomp | libff::mnt6_ate_precompute_G2 (const mnt6_G2 &Q) |
mnt6_Fq6 | libff::mnt6_ate_miller_loop (const mnt6_ate_G1_precomp &prec_P, const mnt6_ate_G2_precomp &prec_Q) |
mnt6_Fq6 | libff::mnt6_ate_double_miller_loop (const mnt6_ate_G1_precomp &prec_P1, const mnt6_ate_G2_precomp &prec_Q1, const mnt6_ate_G1_precomp &prec_P2, const mnt6_ate_G2_precomp &prec_Q2) |
mnt6_Fq6 | libff::mnt6_ate_pairing (const mnt6_G1 &P, const mnt6_G2 &Q) |
mnt6_GT | libff::mnt6_ate_reduced_pairing (const mnt6_G1 &P, const mnt6_G2 &Q) |
mnt6_G1_precomp | libff::mnt6_precompute_G1 (const mnt6_G1 &P) |
mnt6_G2_precomp | libff::mnt6_precompute_G2 (const mnt6_G2 &Q) |
mnt6_Fq6 | libff::mnt6_miller_loop (const mnt6_G1_precomp &prec_P, const mnt6_G2_precomp &prec_Q) |
mnt6_Fq6 | libff::mnt6_double_miller_loop (const mnt6_G1_precomp &prec_P1, const mnt6_G2_precomp &prec_Q1, const mnt6_G1_precomp &prec_P2, const mnt6_G2_precomp &prec_Q2) |
mnt6_Fq6 | libff::mnt6_pairing (const mnt6_G1 &P, const mnt6_G2 &Q) |
mnt6_GT | libff::mnt6_reduced_pairing (const mnt6_G1 &P, const mnt6_G2 &Q) |
mnt6_GT | libff::mnt6_affine_reduced_pairing (const mnt6_G1 &P, const mnt6_G2 &Q) |
Implementation of interfaces for pairing operations on MNT6.
See mnt6_pairing.hpp .
Definition in file mnt6_pairing.cpp.