Botan 3.9.0
Crypto and TLS for C&
|
#include <ed25519_fe.h>
Public Member Functions | |
constexpr | Ed25519_FieldElement () |
constexpr | Ed25519_FieldElement (int64_t h0, int64_t h1, int64_t h2, int64_t h3, int64_t h4, int64_t h5, int64_t h6, int64_t h7, int64_t h8, int64_t h9) |
constexpr | Ed25519_FieldElement (std::span< int32_t, 10 > fe) |
Ed25519_FieldElement | invert () const |
bool | is_negative () const |
bool | is_zero () const |
int32_t & | operator[] (size_t i) |
int32_t | operator[] (size_t i) const |
Ed25519_FieldElement | pow_22523 () const |
void | serialize_to (std::span< uint8_t, 32 > b) const |
Ed25519_FieldElement | sqr () const |
Ed25519_FieldElement | sqr2 () const |
Ed25519_FieldElement | sqr_iter (size_t iter) const |
Static Public Member Functions | |
static Ed25519_FieldElement | add (const Ed25519_FieldElement &a, const Ed25519_FieldElement &b) |
static Ed25519_FieldElement | deserialize (const uint8_t b[32]) |
static Ed25519_FieldElement | mul (const Ed25519_FieldElement &a, const Ed25519_FieldElement &b) |
static Ed25519_FieldElement | negate (const Ed25519_FieldElement &a) |
static constexpr Ed25519_FieldElement | one () |
static Ed25519_FieldElement | sub (const Ed25519_FieldElement &a, const Ed25519_FieldElement &b) |
static constexpr Ed25519_FieldElement | zero () |
An element of the field \Z/(2^255-19)
An element t, entries t[0]...t[9], represents the integer t[0]+2^26 t[1]+2^51 t[2]+2^77 t[3]+2^102 t[4]+...+2^230 t[9]. Bounds on each t[i] vary depending on context.
Definition at line 29 of file ed25519_fe.h.
|
inlineconstexpr |
Default zero initialization
Definition at line 34 of file ed25519_fe.h.
Referenced by add(), deserialize(), invert(), mul(), negate(), one(), pow_22523(), sqr(), sqr2(), sqr_iter(), sub(), and zero().
|
inlineexplicitconstexpr |
Definition at line 45 of file ed25519_fe.h.
References Botan::copy_mem().
|
inlineconstexpr |
Definition at line 48 of file ed25519_fe.h.
|
inlinestatic |
Definition at line 91 of file ed25519_fe.h.
References Ed25519_FieldElement().
Referenced by Botan::operator+().
|
static |
Definition at line 591 of file ed25519_fe.cpp.
References Botan::carry(), Ed25519_FieldElement(), Botan::load_3(), and Botan::load_4().
Ed25519_FieldElement Botan::Ed25519_FieldElement::invert | ( | ) | const |
Definition at line 18 of file ed25519_fe.cpp.
References Ed25519_FieldElement(), and sqr().
|
inline |
Definition at line 84 of file ed25519_fe.h.
References serialize_to().
|
inline |
Definition at line 74 of file ed25519_fe.h.
References Botan::CT::all_zeros(), and serialize_to().
|
static |
Definition at line 105 of file ed25519_fe.cpp.
References Botan::carry(), and Ed25519_FieldElement().
Referenced by Botan::operator*().
|
inlinestatic |
Definition at line 107 of file ed25519_fe.h.
References Ed25519_FieldElement().
Referenced by Botan::operator-().
|
inlinestaticconstexpr |
Definition at line 38 of file ed25519_fe.h.
References Ed25519_FieldElement().
|
inline |
Definition at line 131 of file ed25519_fe.h.
|
inline |
Definition at line 129 of file ed25519_fe.h.
Ed25519_FieldElement Botan::Ed25519_FieldElement::pow_22523 | ( | ) | const |
Definition at line 45 of file ed25519_fe.cpp.
References Ed25519_FieldElement(), and sqr().
void Botan::Ed25519_FieldElement::serialize_to | ( | std::span< uint8_t, 32 > | b | ) | const |
Definition at line 643 of file ed25519_fe.cpp.
References Botan::carry0().
Referenced by is_negative(), and is_zero().
|
inline |
Definition at line 119 of file ed25519_fe.h.
References Ed25519_FieldElement(), and sqr_iter().
Referenced by invert(), and pow_22523().
Ed25519_FieldElement Botan::Ed25519_FieldElement::sqr2 | ( | ) | const |
Definition at line 466 of file ed25519_fe.cpp.
References Botan::carry(), and Ed25519_FieldElement().
Ed25519_FieldElement Botan::Ed25519_FieldElement::sqr_iter | ( | size_t | iter | ) | const |
Definition at line 326 of file ed25519_fe.cpp.
References Botan::carry(), and Ed25519_FieldElement().
Referenced by sqr().
|
inlinestatic |
Definition at line 99 of file ed25519_fe.h.
References Ed25519_FieldElement().
Referenced by Botan::operator-().
|
inlinestaticconstexpr |