Electroneum
src
crypto
crypto_ops_builder
ref10CommentedCombined
fe.h
Go to the documentation of this file.
1
#ifndef FE_H
2
#define FE_H
3
4
#include "crypto_int32.h"
5
6
typedef
crypto_int32
fe
[10];
7
8
/*
9
fe means field element.
10
Here the field is \Z/(2^255-19).
11
An element t, entries t[0]...t[9], represents the integer
12
t[0]+2^26 t[1]+2^51 t[2]+2^77 t[3]+2^102 t[4]+...+2^230 t[9].
13
Bounds on each t[i] vary depending on context.
14
*/
15
16
#define fe_frombytes crypto_sign_ed25519_ref10_fe_frombytes
17
#define fe_tobytes crypto_sign_ed25519_ref10_fe_tobytes
18
#define fe_copy crypto_sign_ed25519_ref10_fe_copy
19
#define fe_isnonzero crypto_sign_ed25519_ref10_fe_isnonzero
20
#define fe_isnegative crypto_sign_ed25519_ref10_fe_isnegative
21
#define fe_0 crypto_sign_ed25519_ref10_fe_0
22
#define fe_1 crypto_sign_ed25519_ref10_fe_1
23
#define fe_cswap crypto_sign_ed25519_ref10_fe_cswap
24
#define fe_cmov crypto_sign_ed25519_ref10_fe_cmov
25
#define fe_add crypto_sign_ed25519_ref10_fe_add
26
#define fe_sub crypto_sign_ed25519_ref10_fe_sub
27
#define fe_neg crypto_sign_ed25519_ref10_fe_neg
28
#define fe_mul crypto_sign_ed25519_ref10_fe_mul
29
#define fe_sq crypto_sign_ed25519_ref10_fe_sq
30
#define fe_sq2 crypto_sign_ed25519_ref10_fe_sq2
31
#define fe_mul121666 crypto_sign_ed25519_ref10_fe_mul121666
32
#define fe_invert crypto_sign_ed25519_ref10_fe_invert
33
#define fe_pow22523 crypto_sign_ed25519_ref10_fe_pow22523
34
35
extern
void
fe_frombytes
(
fe
,
const
unsigned
char
*);
36
extern
void
fe_tobytes
(
unsigned
char
*,
const
fe
);
37
38
extern
void
fe_copy
(
fe
,
const
fe
);
39
extern
int
fe_isnonzero
(
const
fe
);
40
extern
int
fe_isnegative
(
const
fe
);
41
extern
void
fe_0
(
fe
);
42
extern
void
fe_1
(
fe
);
43
extern
void
fe_cswap
(
fe
,
fe
,
unsigned
int
);
44
extern
void
fe_cmov
(
fe
,
const
fe
,
unsigned
int
);
45
46
extern
void
fe_add
(
fe
,
const
fe
,
const
fe
);
47
extern
void
fe_sub
(
fe
,
const
fe
,
const
fe
);
48
extern
void
fe_neg
(
fe
,
const
fe
);
49
extern
void
fe_mul
(
fe
,
const
fe
,
const
fe
);
50
extern
void
fe_sq
(
fe
,
const
fe
);
51
extern
void
fe_sq2
(
fe
,
const
fe
);
52
extern
void
fe_mul121666
(
fe
,
const
fe
);
53
extern
void
fe_invert
(
fe
,
const
fe
);
54
extern
void
fe_pow22523
(
fe
,
const
fe
);
55
56
#endif
crypto_int32
int crypto_int32
Definition:
crypto_int32.h:4
fe_mul121666
#define fe_mul121666
Definition:
fe.h:31
fe_pow22523
#define fe_pow22523
Definition:
fe.h:33
fe_frombytes
#define fe_frombytes
Definition:
fe.h:16
fe_isnegative
#define fe_isnegative
Definition:
fe.h:20
fe_cmov
#define fe_cmov
Definition:
fe.h:24
fe_cswap
#define fe_cswap
Definition:
fe.h:23
fe_add
#define fe_add
Definition:
fe.h:25
fe_sq2
#define fe_sq2
Definition:
fe.h:30
fe_tobytes
#define fe_tobytes
Definition:
fe.h:17
fe_mul
#define fe_mul
Definition:
fe.h:28
fe_copy
#define fe_copy
Definition:
fe.h:18
fe_0
#define fe_0
Definition:
fe.h:21
fe_invert
#define fe_invert
Definition:
fe.h:32
fe_isnonzero
#define fe_isnonzero
Definition:
fe.h:19
fe_1
#define fe_1
Definition:
fe.h:22
fe_sub
#define fe_sub
Definition:
fe.h:26
fe_neg
#define fe_neg
Definition:
fe.h:27
fe_sq
#define fe_sq
Definition:
fe.h:29
fe
crypto_int32 fe[10]
Definition:
fe.h:6
Generated on Sat Aug 29 2020 00:00:00 for Electroneum by
1.9.1