Electroneum
Loading...
Searching...
No Matches
curve25519-donna-64bit.h File Reference

Go to the source code of this file.

Macros

#define F(s)
#define curve25519_contract_carry()
#define curve25519_contract_carry_full()
#define curve25519_contract_carry_final()
#define write51full(n, shift)
#define write51(n)
#define ED25519_64BIT_TABLES

Typedefs

typedef uint64_t bignum25519[5]

Macro Definition Documentation

◆ curve25519_contract_carry

#define curve25519_contract_carry ( )
Value:
t[1] += t[0] >> 51; t[0] &= reduce_mask_51; \
t[2] += t[1] >> 51; t[1] &= reduce_mask_51; \
t[3] += t[2] >> 51; t[2] &= reduce_mask_51; \
t[4] += t[3] >> 51; t[3] &= reduce_mask_51;

◆ curve25519_contract_carry_final

#define curve25519_contract_carry_final ( )
Value:
t[4] &= reduce_mask_51;
#define curve25519_contract_carry()

◆ curve25519_contract_carry_full

#define curve25519_contract_carry_full ( )
Value:
t[0] += 19 * (t[4] >> 51); t[4] &= reduce_mask_51;

◆ ED25519_64BIT_TABLES

#define ED25519_64BIT_TABLES

Definition at line 412 of file curve25519-donna-64bit.h.

◆ F

#define F ( s)
Value:
((((uint64_t)in[s + 0]) ) | \
(((uint64_t)in[s + 1]) << 8) | \
(((uint64_t)in[s + 2]) << 16) | \
(((uint64_t)in[s + 3]) << 24) | \
(((uint64_t)in[s + 4]) << 32) | \
(((uint64_t)in[s + 5]) << 40) | \
(((uint64_t)in[s + 6]) << 48) | \
(((uint64_t)in[s + 7]) << 56))
unsigned __int64 uint64_t
Definition stdint.h:136

◆ write51

#define write51 ( n)
Value:
write51full(n,13*n)
#define write51full(n, shift)

◆ write51full

#define write51full ( n,
shift )
Value:
f = ((t[n] >> shift) | (t[n+1] << (51 - shift))); \
for (i = 0; i < 8; i++, f >>= 8) *out++ = (unsigned char)f;

Typedef Documentation

◆ bignum25519

typedef uint64_t bignum25519[5]

Definition at line 9 of file curve25519-donna-64bit.h.