9#include "../../fields/field.hpp"
10#include "../../groups/group.hpp"
28 static constexpr uint64_t
modulus_0 = 0xFFFFFFFFFFFFFFFFULL;
29 static constexpr uint64_t
modulus_1 = 0x00000000FFFFFFFFULL;
30 static constexpr uint64_t
modulus_2 = 0x0000000000000000ULL;
31 static constexpr uint64_t
modulus_3 = 0xFFFFFFFF00000001ULL;
35 static constexpr uint64_t
r_squared_1 = 18446744056529682431ULL;
36 static constexpr uint64_t
r_squared_2 = 18446744073709551614ULL;
44 static constexpr uint64_t
r_inv = 1;
50 static constexpr uint64_t
r_inv_0 = 0x100000000UL;
51 static constexpr uint64_t
r_inv_1 = 0x0UL;
52 static constexpr uint64_t
r_inv_2 = 0xffffffff00000001UL;
53 static constexpr uint64_t
r_inv_3 = 0x0UL;
145 static constexpr uint64_t
modulus_0 = 0xF3B9CAC2FC632551ULL;
146 static constexpr uint64_t
modulus_1 = 0xBCE6FAADA7179E84ULL;
147 static constexpr uint64_t
modulus_2 = 0xFFFFFFFFFFFFFFFFULL;
148 static constexpr uint64_t
modulus_3 = 0xFFFFFFFF00000000ULL;
160 static constexpr uint64_t
r_inv = 14758798090332847183ULL;
166 static constexpr uint64_t
r_inv_0 = 0x230102a06d6251dcUL;
167 static constexpr uint64_t
r_inv_1 = 0xca5113bcafc4ea28UL;
168 static constexpr uint64_t
r_inv_2 = 0xded10c5bee00bc4eUL;
169 static constexpr uint64_t
r_inv_3 = 0xccd1c8aa212ef3a4UL;
255 fq(0x3BCE3C3E27D2604B, 0x651D06B0CC53B0F6, 0xB3EBBD55769886BC, 0x5AC635D8AA3A93E7).
to_montgomery_form();
257 fq(0xFFFFFFFFFFFFFFFC, 0x00000000FFFFFFFF, 0x0000000000000000, 0xFFFFFFFF00000001).
to_montgomery_form();
260 fq(0xF4A13945D898C296, 0x77037D812DEB33A0, 0xF8BCE6E563A440F2, 0x6B17D1F2E12C4247).
to_montgomery_form();
262 fq(0xCBB6406837BF51F5, 0x2BCE33576B315ECE, 0x8EE7EB4A7C0F9E16, 0x4FE342E2FE1A7F9B).
to_montgomery_form();
270 return "Secp256r1Point";
typename Group::affine_element AffineElement
typename Group::element Element
group class. Represents an elliptic curve group element. Group is parametrised by Fq and Fr
group_elements::affine_element< Fq, Fr, Params > affine_element
group_elements::element< Fq, Fr, Params > element
group< fq, fr, G1Params > g1
std::string msgpack_schema_name(g1::affine_element const &)
General class for prime fields see Prime field documentation["field documentation"] for general imple...
BB_INLINE constexpr field to_montgomery_form() const noexcept
Parameters defining the base field of the secp256r1 curve.
static constexpr uint64_t modulus_wasm_2
static constexpr uint64_t r_squared_1
static constexpr uint64_t primitive_root_wasm_3
static constexpr size_t PUBLIC_INPUTS_SIZE
static constexpr uint64_t coset_generator_2
static constexpr uint64_t cube_root_3
static constexpr uint64_t primitive_root_0
static constexpr uint64_t r_squared_0
static constexpr uint64_t cube_root_wasm_1
static constexpr uint64_t r_inv_3
static constexpr uint64_t r_inv_0
static constexpr uint64_t primitive_root_3
static constexpr uint64_t r_inv_wasm_8
static constexpr uint64_t modulus_3
static constexpr uint64_t r_squared_wasm_1
static constexpr uint64_t primitive_root_1
static constexpr uint64_t primitive_root_wasm_2
static constexpr uint64_t modulus_wasm_8
static constexpr uint64_t r_squared_wasm_3
static constexpr uint64_t coset_generator_0
static constexpr uint64_t modulus_wasm_3
static constexpr uint64_t cube_root_1
static constexpr uint64_t modulus_wasm_7
static constexpr const char * schema_name
static constexpr uint64_t cube_root_0
static constexpr uint64_t modulus_wasm_5
static constexpr uint64_t r_squared_wasm_2
static constexpr uint64_t cube_root_wasm_2
static constexpr uint64_t modulus_wasm_1
static constexpr uint64_t primitive_root_wasm_1
static constexpr uint64_t primitive_root_2
static constexpr uint64_t cube_root_wasm_3
static constexpr uint64_t r_inv
static constexpr uint64_t coset_generator_3
static constexpr uint64_t r_inv_wasm_7
static constexpr uint64_t r_squared_3
static constexpr uint64_t coset_generator_wasm_2
static constexpr uint64_t modulus_2
static constexpr uint64_t r_inv_wasm_4
static constexpr uint64_t modulus_0
static constexpr uint64_t cube_root_2
static constexpr uint64_t r_inv_wasm_5
static constexpr uint64_t coset_generator_wasm_3
static constexpr uint64_t coset_generator_1
static constexpr uint64_t cube_root_wasm_0
static constexpr uint64_t r_squared_2
static constexpr uint64_t coset_generator_wasm_0
static constexpr uint64_t r_inv_wasm_6
static constexpr uint64_t r_inv_wasm_2
static constexpr uint64_t r_squared_wasm_0
static constexpr uint64_t r_inv_2
static constexpr uint64_t r_inv_1
static constexpr uint64_t r_inv_wasm_0
static constexpr uint64_t coset_generator_wasm_1
static constexpr uint64_t primitive_root_wasm_0
static constexpr uint64_t modulus_wasm_4
static constexpr uint64_t modulus_wasm_6
static constexpr uint64_t modulus_1
static constexpr uint64_t r_inv_wasm_3
static constexpr uint64_t r_inv_wasm_1
static constexpr uint64_t modulus_wasm_0
Parameters defining the scalar field of the secp256r1 curve.
static constexpr uint64_t r_squared_wasm_0
static constexpr uint64_t r_inv_1
static constexpr uint64_t r_squared_1
static constexpr uint64_t r_inv
static constexpr uint64_t primitive_root_wasm_0
static constexpr uint64_t modulus_wasm_6
static constexpr uint64_t coset_generator_2
static constexpr uint64_t modulus_2
static constexpr uint64_t primitive_root_wasm_3
static constexpr uint64_t r_inv_wasm_5
static constexpr uint64_t primitive_root_0
static constexpr uint64_t coset_generator_3
static constexpr uint64_t modulus_wasm_7
static constexpr uint64_t r_inv_wasm_0
static constexpr uint64_t r_squared_0
static constexpr uint64_t modulus_wasm_0
static constexpr uint64_t coset_generator_wasm_0
static constexpr uint64_t modulus_wasm_8
static constexpr uint64_t coset_generator_wasm_1
static constexpr uint64_t r_inv_2
static constexpr uint64_t cube_root_0
static constexpr uint64_t primitive_root_3
static constexpr uint64_t r_inv_wasm_3
static constexpr uint64_t r_inv_wasm_8
static constexpr uint64_t modulus_wasm_1
static constexpr uint64_t primitive_root_1
static constexpr uint64_t r_inv_wasm_7
static constexpr uint64_t modulus_wasm_5
static constexpr const char * schema_name
static constexpr uint64_t primitive_root_wasm_1
static constexpr uint64_t primitive_root_wasm_2
static constexpr uint64_t cube_root_wasm_1
static constexpr uint64_t modulus_wasm_2
static constexpr uint64_t coset_generator_wasm_2
static constexpr uint64_t cube_root_wasm_3
static constexpr uint64_t r_inv_wasm_4
static constexpr uint64_t modulus_1
static constexpr uint64_t r_inv_wasm_2
static constexpr size_t PUBLIC_INPUTS_SIZE
static constexpr uint64_t r_inv_3
static constexpr uint64_t modulus_3
static constexpr uint64_t modulus_wasm_3
static constexpr uint64_t coset_generator_1
static constexpr uint64_t r_squared_wasm_2
static constexpr uint64_t r_inv_wasm_1
static constexpr uint64_t coset_generator_wasm_3
static constexpr uint64_t r_inv_0
static constexpr uint64_t cube_root_2
static constexpr uint64_t r_squared_2
static constexpr uint64_t modulus_wasm_4
static constexpr uint64_t r_squared_3
static constexpr uint64_t r_inv_wasm_6
static constexpr uint64_t cube_root_wasm_0
static constexpr uint64_t r_squared_wasm_3
static constexpr uint64_t cube_root_1
static constexpr uint64_t coset_generator_0
static constexpr uint64_t cube_root_wasm_2
static constexpr uint64_t modulus_0
static constexpr uint64_t r_squared_wasm_1
static constexpr uint64_t primitive_root_2
static constexpr uint64_t cube_root_3
static constexpr bool can_hash_to_curve
static constexpr bool has_a
static constexpr fq one_y
static constexpr bool USE_ENDOMORPHISM
static constexpr bool small_elements
static constexpr fq one_x