35 typedef int32_t
fe[10];
147 void sc_0(
unsigned char *);
149 void sc_add(
unsigned char *,
const unsigned char *,
const unsigned char *);
150 void sc_sub(
unsigned char *,
const unsigned char *,
const unsigned char *);
151 void sc_mulsub(
unsigned char *,
const unsigned char *,
const unsigned char *,
const unsigned char *);
152 void sc_mul(
unsigned char *,
const unsigned char *,
const unsigned char *);
153 void sc_muladd(
unsigned char *
s,
const unsigned char *
a,
const unsigned char *
b,
const unsigned char *c);
154 int sc_check(
const unsigned char *);
158 uint64_t
load_3(
const unsigned char *in);
159 uint64_t
load_4(
const unsigned char *in);
#define s(x, c)
Definition: aesb.c:47
void sc_mul(unsigned char *, const unsigned char *, const unsigned char *)
Definition: crypto-ops.c:3168
uint64_t load_3(const unsigned char *in)
Definition: crypto-ops.c:51
const fe fe_fffb4
Definition: crypto-ops-data.c:872
void fe_tobytes(unsigned char *, const fe)
Definition: crypto-ops.c:1032
void ge_add(ge_p1p1 *, const ge_p3 *, const ge_cached *)
Definition: crypto-ops.c:1126
void ge_sub(ge_p1p1 *r, const ge_p3 *p, const ge_cached *q)
Definition: crypto-ops.c:1687
const fe fe_d2
Definition: crypto-ops-data.c:39
void ge_double_scalarmult_precomp_vartime(ge_p2 *, const unsigned char *, const ge_p3 *, const unsigned char *, const ge_dsmp)
Definition: crypto-ops.c:2294
void sc_0(unsigned char *)
Definition: crypto-ops.c:2426
void ge_double_scalarmult_base_vartime_p3(ge_p3 *, const unsigned char *, const ge_p3 *, const unsigned char *)
Definition: crypto-ops.c:1287
void fe_invert(fe out, const fe z)
Definition: crypto-ops.c:259
const fe fe_fffb3
Definition: crypto-ops-data.c:871
void ge_triple_scalarmult_precomp_vartime(ge_p2 *, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp)
Definition: crypto-ops.c:2202
void ge_scalarmult_base(ge_p3 *, const unsigned char *)
Definition: crypto-ops.c:1639
uint64_t load_4(const unsigned char *in)
Definition: crypto-ops.c:59
void ge_triple_scalarmult_base_vartime(ge_p2 *, const unsigned char *, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp)
Definition: crypto-ops.c:1238
ge_cached ge_dsmp[8]
Definition: crypto-ops.h:78
const fe fe_ma2
Definition: crypto-ops-data.c:867
int32_t fe[10]
Definition: crypto-ops.h:35
const fe fe_ma
Definition: crypto-ops-data.c:868
const ge_precomp ge_base[32][8]
Definition: crypto-ops-data.c:42
void ge_double_scalarmult_precomp_vartime2_p3(ge_p3 *, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp)
Definition: crypto-ops.c:2251
int ge_p3_is_point_at_infinity(const ge_p3 *p)
Definition: crypto-ops.c:3833
void sc_reduce32(unsigned char *)
Definition: crypto-ops.c:2433
void ge_dsm_precomp(ge_dsmp r, const ge_p3 *s)
Definition: crypto-ops.c:1175
void ge_p1p1_to_p2(ge_p2 *, const ge_p1p1 *)
Definition: crypto-ops.c:1472
void ge_p3_to_cached(ge_cached *, const ge_p3 *)
Definition: crypto-ops.c:1545
int ge_frombytes_vartime(ge_p3 *, const unsigned char *)
Definition: crypto-ops.c:1334
const fe fe_d
Definition: crypto-ops-data.c:37
void sc_sub(unsigned char *, const unsigned char *, const unsigned char *)
Definition: crypto-ops.c:2687
void ge_tobytes(unsigned char *, const ge_p2 *)
Definition: crypto-ops.c:1704
const fe fe_fffb1
Definition: crypto-ops-data.c:869
void ge_p2_dbl(ge_p1p1 *, const ge_p2 *)
Definition: crypto-ops.c:1505
void sc_mulsub(unsigned char *, const unsigned char *, const unsigned char *, const unsigned char *)
Definition: crypto-ops.c:2837
void ge_mul8(ge_p1p1 *, const ge_p2 *)
Definition: crypto-ops.c:2301
const ge_precomp ge_Bi[8]
Definition: crypto-ops-data.c:846
void ge_p3_to_p2(ge_p2 *, const ge_p3 *)
Definition: crypto-ops.c:1558
int sc_check(const unsigned char *)
Definition: crypto-ops.c:3814
void ge_p1p1_to_p3(ge_p3 *, const ge_p1p1 *)
Definition: crypto-ops.c:1484
void ge_double_scalarmult_precomp_vartime2(ge_p2 *, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp)
Definition: crypto-ops.c:2162
void sc_muladd(unsigned char *s, const unsigned char *a, const unsigned char *b, const unsigned char *c)
Definition: crypto-ops.c:3489
void ge_double_scalarmult_base_vartime(ge_p2 *, const unsigned char *, const ge_p3 *, const unsigned char *)
Definition: crypto-ops.c:1196
const fe fe_sqrtm1
Definition: crypto-ops-data.c:38
int sc_isnonzero(const unsigned char *)
Definition: crypto-ops.c:3826
void sc_reduce(unsigned char *)
Definition: crypto-ops.c:1728
const ge_p3 ge_p3_identity
Definition: crypto-ops-data.c:873
void sc_add(unsigned char *, const unsigned char *, const unsigned char *)
Definition: crypto-ops.c:2548
void ge_fromfe_frombytes_vartime(ge_p2 *, const unsigned char *)
Definition: crypto-ops.c:2310
void ge_scalarmult(ge_p2 *, const unsigned char *, const ge_p3 *)
Definition: crypto-ops.c:2038
void ge_scalarmult_p3(ge_p3 *, const unsigned char *, const ge_p3 *)
Definition: crypto-ops.c:2098
void fe_add(fe h, const fe f, const fe g)
Definition: crypto-ops.c:121
const ge_p3 ge_p3_H
Definition: crypto-ops-data.c:874
void ge_p3_tobytes(unsigned char *, const ge_p3 *)
Definition: crypto-ops.c:1566
const fe fe_fffb2
Definition: crypto-ops-data.c:870
string a
Definition: MakeCryptoOps.py:15
int q
Definition: base.py:2
int b
Definition: base.py:1
Definition: crypto-ops.h:65
fe Z
Definition: crypto-ops.h:68
fe T2d
Definition: crypto-ops.h:69
fe YplusX
Definition: crypto-ops.h:66
fe YminusX
Definition: crypto-ops.h:67
Definition: crypto-ops.h:52
fe Z
Definition: crypto-ops.h:55
fe Y
Definition: crypto-ops.h:54
fe X
Definition: crypto-ops.h:53
fe T
Definition: crypto-ops.h:56
Definition: crypto-ops.h:39
fe Z
Definition: crypto-ops.h:42
fe X
Definition: crypto-ops.h:40
fe Y
Definition: crypto-ops.h:41
Definition: crypto-ops.h:45
fe Z
Definition: crypto-ops.h:48
fe Y
Definition: crypto-ops.h:47
fe X
Definition: crypto-ops.h:46
fe T
Definition: crypto-ops.h:49
Definition: crypto-ops.h:59
fe yplusx
Definition: crypto-ops.h:60
fe yminusx
Definition: crypto-ops.h:61
fe xy2d
Definition: crypto-ops.h:62