Let us walk on the 3-isogeny graph
Loading...
Searching...
No Matches
cgl_hash.h File Reference
#include "isogeny_walks.h"
Include dependency graph for cgl_hash.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  cgl_hash_2_ctx
 
struct  cgl_hash_3_ctx
 

Typedefs

typedef struct cgl_hash_2_ctx cgl_hash_2_ctx
 
typedef struct cgl_hash_3_ctx cgl_hash_3_ctx
 

Functions

void cgl_hash_init_2 (cgl_hash_2_ctx *ctx, fp2_t input_A)
 
void cgl_hash_digest_2 (fp2_t *output, const cgl_hash_2_ctx *ctx, const uint8_t *input_bitstring)
 
void cgl_hash_init_3 (cgl_hash_3_ctx *ctx, fp2_t input_A, uint8_t choice)
 
void cgl_hash_digest_3 (fp2_t *output, const cgl_hash_3_ctx *ctx, const uint8_t *input_trit_string)
 

Typedef Documentation

◆ cgl_hash_2_ctx

◆ cgl_hash_3_ctx

Function Documentation

◆ cgl_hash_digest_2()

void cgl_hash_digest_2 ( fp2_t output,
const cgl_hash_2_ctx ctx,
const uint8_t input_bitstring 
)

Definition at line 9 of file cgl_hash.c.

9 {
10 fp2_set_to_zero(output);
11
13}
void fp2_set_to_zero(fp2_t *output)
Definition fp2.c:54
void isogeny_walks_2(fp2_t *output, fp2_t input_prev, fp2_t input, const uint8_t *input_path, size_t input_length)
#define BIT_LENGTH_PATH
Definition p254.h:14
for i

References BIT_LENGTH_PATH, fp2_set_to_zero(), isogeny_walks_2(), cgl_hash_2_ctx::j0, and cgl_hash_2_ctx::j_.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cgl_hash_digest_3()

void cgl_hash_digest_3 ( fp2_t output,
const cgl_hash_3_ctx ctx,
const uint8_t input_trit_string 
)

Definition at line 23 of file cgl_hash.c.

23 {
24 fp2_t a1, a3;
25 fp2_set_to_zero(output);
26
29}
void isogeny_walks_3(fp2_t *output_a1, fp2_t *output_a3, fp2_t input_a1, fp2_t input_a3, const uint8_t *input_path, size_t input_length)
void isogeny_walks_switch_from_model_3(fp2_t *output_j, fp2_t input_a1, fp2_t input_a3)
den a3
#define TRITLENGTH_PATH
Definition p254.h:15
Definition fp2.h:10
g a1
Definition to_model.m:15

References cgl_hash_3_ctx::a1, a1, cgl_hash_3_ctx::a3, a3, fp2_set_to_zero(), isogeny_walks_3(), isogeny_walks_switch_from_model_3(), and TRITLENGTH_PATH.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cgl_hash_init_2()

void cgl_hash_init_2 ( cgl_hash_2_ctx ctx,
fp2_t  input_A 
)

Definition at line 16 of file cgl_hash.c.

16 {
19}
void isogeny_walks_get_previous_step_2(fp2_t *output_j, fp2_t input_A)
void isogeny_walks_from_montgomery_model_2(fp2_t *output_j, fp2_t input_A)

References isogeny_walks_from_montgomery_model_2(), isogeny_walks_get_previous_step_2(), cgl_hash_2_ctx::j0, and cgl_hash_2_ctx::j_.

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ cgl_hash_init_3()

void cgl_hash_init_3 ( cgl_hash_3_ctx ctx,
fp2_t  input_A,
uint8_t  choice 
)

Definition at line 32 of file cgl_hash.c.

32 {
33 fp2_t xP[4];
36}
void isogeny_walks_from_montgomery_model_3(fp2_t *output_a1, fp2_t *output_a3, fp2_t input_A, fp2_t input_xP)
void isogeny_walks_get_points_3(fp2_t *output, fp2_t input_A)

References cgl_hash_3_ctx::a1, cgl_hash_3_ctx::a3, isogeny_walks_from_montgomery_model_3(), and isogeny_walks_get_points_3().

Referenced by main().

Here is the call graph for this function:
Here is the caller graph for this function: