Monero
Loading...
Searching...
No Matches
crypto-ops.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  ge_p2
struct  ge_p3
struct  ge_p1p1
struct  ge_precomp
struct  ge_cached

Typedefs

typedef int32_t fe[10]
typedef ge_cached ge_dsmp[8]

Functions

void ge_add (ge_p1p1 *, const ge_p3 *, const ge_cached *)
void ge_dsm_precomp (ge_dsmp r, const ge_p3 *s)
void ge_double_scalarmult_base_vartime (ge_p2 *, const unsigned char *, const ge_p3 *, const unsigned char *)
void ge_triple_scalarmult_base_vartime (ge_p2 *, const unsigned char *, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp)
void ge_double_scalarmult_base_vartime_p3 (ge_p3 *, const unsigned char *, const ge_p3 *, const unsigned char *)
int ge_frombytes_vartime (ge_p3 *, const unsigned char *)
void ge_p1p1_to_p2 (ge_p2 *, const ge_p1p1 *)
void ge_p1p1_to_p3 (ge_p3 *, const ge_p1p1 *)
void ge_p2_dbl (ge_p1p1 *, const ge_p2 *)
void ge_p3_to_cached (ge_cached *, const ge_p3 *)
void ge_p3_to_p2 (ge_p2 *, const ge_p3 *)
void ge_p3_tobytes (unsigned char *, const ge_p3 *)
void ge_scalarmult_base (ge_p3 *, const unsigned char *)
void ge_tobytes (unsigned char *, const ge_p2 *)
void sc_reduce (unsigned char *)
void ge_scalarmult (ge_p2 *, const unsigned char *, const ge_p3 *)
void ge_scalarmult_p3 (ge_p3 *, const unsigned char *, const ge_p3 *)
void ge_double_scalarmult_precomp_vartime (ge_p2 *, const unsigned char *, const ge_p3 *, const unsigned char *, const ge_dsmp)
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)
void ge_double_scalarmult_precomp_vartime2 (ge_p2 *, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp)
void ge_double_scalarmult_precomp_vartime2_p3 (ge_p3 *, const unsigned char *, const ge_dsmp, const unsigned char *, const ge_dsmp)
void ge_mul8 (ge_p1p1 *, const ge_p2 *)
void ge_fromfe_frombytes_vartime (ge_p2 *, const unsigned char *)
void sc_0 (unsigned char *)
void sc_reduce32 (unsigned char *)
void sc_add (unsigned char *, const unsigned char *, const unsigned char *)
void sc_sub (unsigned char *, const unsigned char *, const unsigned char *)
void sc_mulsub (unsigned char *, const unsigned char *, const unsigned char *, const unsigned char *)
void sc_mul (unsigned char *, const unsigned char *, const unsigned char *)
void sc_muladd (unsigned char *s, const unsigned char *a, const unsigned char *b, const unsigned char *c)
int sc_check (const unsigned char *)
int sc_isnonzero (const unsigned char *)
uint64_t load_3 (const unsigned char *in)
uint64_t load_4 (const unsigned char *in)
void ge_sub (ge_p1p1 *r, const ge_p3 *p, const ge_cached *q)
void fe_add (fe h, const fe f, const fe g)
void fe_tobytes (unsigned char *, const fe)
void fe_invert (fe out, const fe z)
int ge_p3_is_point_at_infinity_vartime (const ge_p3 *p)

Variables

const ge_precomp ge_Bi [8]
const fe fe_sqrtm1
const fe fe_d
const fe fe_d2
const ge_precomp ge_base [32][8]
const fe fe_ma2
const fe fe_ma
const fe fe_fffb1
const fe fe_fffb2
const fe fe_fffb3
const fe fe_fffb4
const ge_p3 ge_p3_identity
const ge_p3 ge_p3_H

Typedef Documentation

◆ fe

typedef int32_t fe[10]

◆ ge_dsmp

typedef ge_cached ge_dsmp[8]

Function Documentation

◆ fe_add()

void fe_add ( fe h,
const fe f,
const fe g )

◆ fe_invert()

void fe_invert ( fe out,
const fe z )

◆ fe_tobytes()

void fe_tobytes ( unsigned char * s,
const fe h )

◆ ge_add()

void ge_add ( ge_p1p1 * r,
const ge_p3 * p,
const ge_cached * q )

◆ ge_double_scalarmult_base_vartime()

void ge_double_scalarmult_base_vartime ( ge_p2 * r,
const unsigned char * a,
const ge_p3 * A,
const unsigned char * b )

◆ ge_double_scalarmult_base_vartime_p3()

void ge_double_scalarmult_base_vartime_p3 ( ge_p3 * r3,
const unsigned char * a,
const ge_p3 * A,
const unsigned char * b )

◆ ge_double_scalarmult_precomp_vartime()

void ge_double_scalarmult_precomp_vartime ( ge_p2 * r,
const unsigned char * a,
const ge_p3 * A,
const unsigned char * b,
const ge_dsmp Bi )

◆ ge_double_scalarmult_precomp_vartime2()

void ge_double_scalarmult_precomp_vartime2 ( ge_p2 * r,
const unsigned char * a,
const ge_dsmp Ai,
const unsigned char * b,
const ge_dsmp Bi )

◆ ge_double_scalarmult_precomp_vartime2_p3()

void ge_double_scalarmult_precomp_vartime2_p3 ( ge_p3 * r3,
const unsigned char * a,
const ge_dsmp Ai,
const unsigned char * b,
const ge_dsmp Bi )

◆ ge_dsm_precomp()

void ge_dsm_precomp ( ge_dsmp r,
const ge_p3 * s )

◆ ge_frombytes_vartime()

int ge_frombytes_vartime ( ge_p3 * h,
const unsigned char * s )

◆ ge_fromfe_frombytes_vartime()

void ge_fromfe_frombytes_vartime ( ge_p2 * r,
const unsigned char * s )

◆ ge_mul8()

void ge_mul8 ( ge_p1p1 * r,
const ge_p2 * t )

◆ ge_p1p1_to_p2()

void ge_p1p1_to_p2 ( ge_p2 * r,
const ge_p1p1 * p )

◆ ge_p1p1_to_p3()

void ge_p1p1_to_p3 ( ge_p3 * r,
const ge_p1p1 * p )

◆ ge_p2_dbl()

void ge_p2_dbl ( ge_p1p1 * r,
const ge_p2 * p )

◆ ge_p3_is_point_at_infinity_vartime()

int ge_p3_is_point_at_infinity_vartime ( const ge_p3 * p)

◆ ge_p3_to_cached()

void ge_p3_to_cached ( ge_cached * r,
const ge_p3 * p )

◆ ge_p3_to_p2()

void ge_p3_to_p2 ( ge_p2 * r,
const ge_p3 * p )

◆ ge_p3_tobytes()

void ge_p3_tobytes ( unsigned char * s,
const ge_p3 * h )

◆ ge_scalarmult()

void ge_scalarmult ( ge_p2 * r,
const unsigned char * a,
const ge_p3 * A )

◆ ge_scalarmult_base()

void ge_scalarmult_base ( ge_p3 * h,
const unsigned char * a )

◆ ge_scalarmult_p3()

void ge_scalarmult_p3 ( ge_p3 * r3,
const unsigned char * a,
const ge_p3 * A )

◆ ge_sub()

void ge_sub ( ge_p1p1 * r,
const ge_p3 * p,
const ge_cached * q )

◆ ge_tobytes()

void ge_tobytes ( unsigned char * s,
const ge_p2 * h )

◆ ge_triple_scalarmult_base_vartime()

void ge_triple_scalarmult_base_vartime ( ge_p2 * r,
const unsigned char * a,
const unsigned char * b,
const ge_dsmp Bi,
const unsigned char * c,
const ge_dsmp Ci )

◆ ge_triple_scalarmult_precomp_vartime()

void ge_triple_scalarmult_precomp_vartime ( ge_p2 * r,
const unsigned char * a,
const ge_dsmp Ai,
const unsigned char * b,
const ge_dsmp Bi,
const unsigned char * c,
const ge_dsmp Ci )

◆ load_3()

uint64_t load_3 ( const unsigned char * in)

◆ load_4()

uint64_t load_4 ( const unsigned char * in)

◆ sc_0()

void sc_0 ( unsigned char * s)

◆ sc_add()

void sc_add ( unsigned char * s,
const unsigned char * a,
const unsigned char * b )

◆ sc_check()

int sc_check ( const unsigned char * s)

◆ sc_isnonzero()

int sc_isnonzero ( const unsigned char * s)

◆ sc_mul()

void sc_mul ( unsigned char * s,
const unsigned char * a,
const unsigned char * b )

◆ sc_muladd()

void sc_muladd ( unsigned char * s,
const unsigned char * a,
const unsigned char * b,
const unsigned char * c )

◆ sc_mulsub()

void sc_mulsub ( unsigned char * s,
const unsigned char * a,
const unsigned char * b,
const unsigned char * c )

◆ sc_reduce()

void sc_reduce ( unsigned char * s)

◆ sc_reduce32()

void sc_reduce32 ( unsigned char * s)

◆ sc_sub()

void sc_sub ( unsigned char * s,
const unsigned char * a,
const unsigned char * b )

Variable Documentation

◆ fe_d

const fe fe_d
extern

◆ fe_d2

const fe fe_d2
extern

◆ fe_fffb1

const fe fe_fffb1
extern

◆ fe_fffb2

const fe fe_fffb2
extern

◆ fe_fffb3

const fe fe_fffb3
extern

◆ fe_fffb4

const fe fe_fffb4
extern

◆ fe_ma

const fe fe_ma
extern

◆ fe_ma2

const fe fe_ma2
extern

◆ fe_sqrtm1

const fe fe_sqrtm1
extern

◆ ge_base

const ge_precomp ge_base[32][8]
extern

◆ ge_Bi

const ge_precomp ge_Bi[8]
extern

◆ ge_p3_H

const ge_p3 ge_p3_H
extern

◆ ge_p3_identity

const ge_p3 ge_p3_identity
extern