UltrafastSecp256k1 3.50.0
Ultra high-performance secp256k1 elliptic curve cryptography library
Loading...
Searching...
No Matches
field.hpp File Reference
#include <array>
#include <cstdint>
#include <cstring>
#include <string>
#include <vector>
#include "config.hpp"
#include "secp256k1/types.hpp"

Go to the source code of this file.

Classes

struct  secp256k1::fast::MidFieldElement
 
class  secp256k1::fast::FieldElement
 

Namespaces

namespace  secp256k1
 
namespace  secp256k1::fast
 
namespace  secp256k1::fast::montgomery
 

Functions

MidFieldElement secp256k1::fast::toMid (const FieldElement &fe) noexcept
 
FieldElement secp256k1::fast::fe_inverse_binary (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_window4 (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_addchain (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_eea (const FieldElement &value)
 
FieldElement secp256k1::fast::pow_p_minus_2_binary (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_window4 (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_addchain (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_eea (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_window_naf_v2 (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_hybrid_eea (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_yao (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_bos_coster (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_ltr_precomp (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_pippenger (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_karatsuba (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_booth (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_strauss (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_kary16 (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_fixed_window5 (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_rtl_binary (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_addchain_unrolled (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_binary_opt (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_sliding_dynamic (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_fermat_gpu (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_montgomery_redc (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_branchless (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_parallel_window (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_binary_euclidean (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_lehmer (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_stein (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_secp256k1_special (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_warp_optimized (FieldElement base)
 
FieldElement secp256k1::fast::pow_p_minus_2_double_base (const FieldElement &base)
 
FieldElement secp256k1::fast::pow_p_minus_2_compact_table (FieldElement base)
 
FieldElement secp256k1::fast::fe_inverse_window_naf_v2 (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_hybrid_eea (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_safegcd (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_yao (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_bos_coster (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_ltr_precomp (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_pippenger (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_karatsuba (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_booth (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_strauss (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_kary16 (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_fixed_window5 (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_rtl_binary (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_addchain_unrolled (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_binary_opt (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_sliding_dynamic (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_fermat_gpu (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_montgomery_redc (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_branchless (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_parallel_window (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_binary_euclidean (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_lehmer (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_stein (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_secp256k1_special (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_warp_optimized (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_double_base (const FieldElement &value)
 
FieldElement secp256k1::fast::fe_inverse_compact_table (const FieldElement &value)
 
void secp256k1::fast::fe_batch_inverse (FieldElement *elements, size_t count)
 
void secp256k1::fast::fe_batch_inverse (FieldElement *elements, size_t count, std::vector< FieldElement > &scratch)