-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfe448.h
More file actions
62 lines (42 loc) · 1.7 KB
/
Copy pathfe448.h
File metadata and controls
62 lines (42 loc) · 1.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#ifndef FE448_H
#define FE448_H
#include "defs.h"
#define fe448 crypto_sign_fe448
#define fe448_freeze crypto_sign_fe448_freeze
#define fe448_unpack crypto_sign_fe448_unpack
#define fe448_pack crypto_sign_fe448_pack
#define fe448_iszero crypto_sign_fe448_iszero
#define fe448_iseq_vartime crypto_sign_fe448_iseq_vartime
#define fe448_cmov crypto_sign_fe448_cmov
#define fe448_setone crypto_sign_fe448_setone
#define fe448_setzero crypto_sign_fe448_setzero
#define fe448_neg crypto_sign_fe448_neg
#define fe448_getparity crypto_sign_fe448_getparity
#define fe448_add crypto_sign_fe448_add
#define fe448_sub crypto_sign_fe448_sub
#define fe448_mul crypto_sign_fe448_mul
#define fe448_square crypto_sign_fe448_square
#define fe448_invert crypto_sign_fe448_invert
#define fe448_pow446 crypto_sign_fe448_pow446
typedef struct
{
crypto_uint32 v[57];
}
fe448;
void fe448_freeze(fe448 *r);
void fe448_unpack(fe448 *r, const unsigned char x[57]);
void fe448_pack(unsigned char r[57], const fe448 *x);
int fe448_iszero(const fe448 *x);
int fe448_iseq_vartime(const fe448 *x, const fe448 *y);
void fe448_cmov(fe448 *r, const fe448 *x, unsigned char b);
void fe448_setone(fe448 *r);
void fe448_setzero(fe448 *r);
void fe448_neg(fe448 *r, const fe448 *x);
unsigned char fe448_getparity(const fe448 *x);
void fe448_add(fe448 *r, const fe448 *x, const fe448 *y);
void fe448_sub(fe448 *r, const fe448 *x, const fe448 *y);
void fe448_mul(fe448 *r, const fe448 *x, const fe448 *y);
void fe448_square(fe448 *r, const fe448 *x);
void fe448_invert(fe448 *r, const fe448 *x);
void fe448_pow446(fe448 *r, const fe448 *x);
#endif