11#ifndef BOTAN_ED25519_FE_H_
12#define BOTAN_ED25519_FE_H_
14#include <botan/exceptn.h>
15#include <botan/mem_ops.h>
54 m_fe[0] =
static_cast<int32_t
>(h0);
55 m_fe[1] =
static_cast<int32_t
>(h1);
56 m_fe[2] =
static_cast<int32_t
>(h2);
57 m_fe[3] =
static_cast<int32_t
>(h3);
58 m_fe[4] =
static_cast<int32_t
>(h4);
59 m_fe[5] =
static_cast<int32_t
>(h5);
60 m_fe[6] =
static_cast<int32_t
>(h6);
61 m_fe[7] =
static_cast<int32_t
>(h7);
62 m_fe[8] =
static_cast<int32_t
>(h8);
63 m_fe[9] =
static_cast<int32_t
>(h9);
80 for(
size_t i = 0; i != 32; ++i) {
100 for(
size_t i = 0; i != 10; ++i) {
108 for(
size_t i = 0; i != 10; ++i) {
116 for(
size_t i = 0; i != 10; ++i) {
static FE_25519 add(const FE_25519 &a, const FE_25519 &b)
FE_25519 & operator=(FE_25519 &&other)=default
static FE_25519 sub(const FE_25519 &a, const FE_25519 &b)
FE_25519(const FE_25519 &other)=default
FE_25519(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)
void to_bytes(uint8_t b[32]) const
void from_bytes(const uint8_t b[32])
static FE_25519 invert(const FE_25519 &a)
static FE_25519 sqr(const FE_25519 &a)
FE_25519(std::initializer_list< int32_t > x)
FE_25519 & operator=(const FE_25519 &other)=default
static FE_25519 mul(const FE_25519 &a, const FE_25519 &b)
FE_25519(FE_25519 &&other)=default
int32_t & operator[](size_t i)
static FE_25519 negate(const FE_25519 &a)
int32_t operator[](size_t i) const
static FE_25519 pow_22523(const FE_25519 &a)
static FE_25519 sqr_iter(const FE_25519 &a, size_t iter)
static FE_25519 sqr2(const FE_25519 &a)
void fe_sq2(fe &x, const fe &z)
int fe_isnegative(const fe &x)
int fe_isnonzero(const fe &x)
void fe_mul(fe &x, const fe &a, const fe &b)
void fe_sq(fe &x, const fe &z)
void fe_neg(fe &x, const fe &z)
void secure_scrub_memory(void *ptr, size_t n)
void fe_sq_iter(fe &x, const fe &z, size_t iter)
void fe_copy(fe &a, const fe &b)
void fe_add(fe &x, const fe &a, const fe &b)
void fe_sub(fe &x, const fe &a, const fe &b)
void fe_tobytes(uint8_t *b, const fe &x)
void fe_pow22523(fe &x, const fe &y)
void fe_invert(fe &x, const fe &z)
void fe_frombytes(fe &x, const uint8_t *b)
constexpr void copy_mem(T *out, const T *in, size_t n)
constexpr void clear_mem(T *ptr, size_t n)