Let us walk on the 3-isogeny graph
|
#include "fp2.h"
Go to the source code of this file.
Functions | |
void | fp2_mul_by_1488 (fp2_t *output, fp2_t input) |
void | fp2_mul_by_2976 (fp2_t *output, fp2_t input) |
void | fp2_mul_by_162000 (fp2_t *output, fp2_t input) |
void | fp2_mul_by_324000 (fp2_t *output, fp2_t input) |
void | fp2_mul_by_2532192 (fp2_t *output, fp2_t input) |
void | fp2_mul_by_645205500 (fp2_t *output, fp2_t input) |
void | fp2_mul_by_8748000000 (fp2_t *output, fp2_t input) |
void | isogeny_walks_2 (fp2_t *output, fp2_t input_prev, fp2_t input, const uint8_t *input_path, size_t input_length) |
void | isogeny_walks_from_montgomery_model_2 (fp2_t *output_j, fp2_t input_A) |
void | isogeny_walks_get_previous_step_2 (fp2_t *output_j, fp2_t input_A) |
void | isogeny_walks_sample_bit_string (uint8_t *output) |
void | isogeny_walks_2_slow (fp2_t *j0, fp2_t *j1, fp2_t input_prev, fp2_t input, const uint8_t *input_path, size_t input_length) |
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_get_points_3 (fp2_t *output, fp2_t input_A) |
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_switch_from_model_3 (fp2_t *output_j, fp2_t input_a1, fp2_t input_a3) |
void | isogeny_walks_sample_trit_string (uint8_t *output) |
void | isogeny_walks_get_points_3_fp (fp_t *output, const fp_t *input_A) |
void | isogeny_walks_to_montgomery_model_3_fp (fp_t *output_A, const fp_t *input_t) |
void | isogeny_walks_3_fp (fp_t output_A, const fp_t input_A, int input_length) |
Definition at line 11 of file isogeny_walks_2.c.
References fp2_add.
Referenced by fp2_mul_by_2976().
Definition at line 37 of file isogeny_walks_2.c.
References fp2_add.
Referenced by fp2_mul_by_324000(), isogeny_walks_2(), and isogeny_walks_2_slow().
Definition at line 72 of file isogeny_walks_2.c.
References fp2_add.
Referenced by isogeny_walks_2(), and isogeny_walks_2_slow().
Definition at line 32 of file isogeny_walks_2.c.
References fp2_add, and fp2_mul_by_1488().
Referenced by isogeny_walks_2(), and isogeny_walks_2_slow().
Definition at line 67 of file isogeny_walks_2.c.
References fp2_add, and fp2_mul_by_162000().
Referenced by isogeny_walks_2(), and isogeny_walks_2_slow().
Definition at line 108 of file isogeny_walks_2.c.
References fp2_add.
Referenced by isogeny_walks_2(), and isogeny_walks_2_slow().
Definition at line 156 of file isogeny_walks_2.c.
References fp2_add.
Referenced by isogeny_walks_2(), and isogeny_walks_2_slow().
void isogeny_walks_2 | ( | fp2_t * | output, |
fp2_t | input_prev, | ||
fp2_t | input, | ||
const uint8_t * | input_path, | ||
size_t | input_length ) |
Definition at line 208 of file isogeny_walks_2.c.
References fp2_add, fp2_copy, fp2_half(), fp2_linear_pass_in(), fp2_mul, fp2_mul_by_162000(), fp2_mul_by_2532192(), fp2_mul_by_2976(), fp2_mul_by_324000(), fp2_mul_by_645205500(), fp2_mul_by_8748000000(), fp2_neg, fp2_set_to_one(), fp2_sqr, fp2_sqrt_fast(), fp2_sub, i, and j.
Referenced by cgl_hash_digest_2().
void isogeny_walks_2_slow | ( | fp2_t * | j0, |
fp2_t * | j1, | ||
fp2_t | input_prev, | ||
fp2_t | input, | ||
const uint8_t * | input_path, | ||
size_t | input_length ) |
Definition at line 333 of file isogeny_walks_2.c.
References fp2_add, fp2_copy, fp2_half(), fp2_linear_pass_in(), fp2_mul, fp2_mul_by_162000(), fp2_mul_by_2532192(), fp2_mul_by_2976(), fp2_mul_by_324000(), fp2_mul_by_645205500(), fp2_mul_by_8748000000(), fp2_neg, fp2_set_to_one(), fp2_sqr, fp2_sqrt_slow(), fp2_sub, i, and j.
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 ) |
Definition at line 10 of file isogeny_walks_3.c.
References a, a1, a3, fp2_add, fp2_copy, fp2_curt(), fp2_linear_pass_in(), fp2_mul, fp2_neg, fp2_set_to_one(), fp2_sqr, fp2_sub, i, and j.
Referenced by cgl_hash_digest_3().
Definition at line 217 of file isogeny_walks_3_fp.c.
References constant_time_is_lessthan_u64(), fp_copy, fp_cset(), fp_set_to_one(), i, isogeny_to_montgomery(), isogeny_walks_get_points_3_fp(), isogeny_walks_to_montgomery_model_3_fp(), and TOP_BIT.
Referenced by action().
Definition at line 280 of file isogeny_walks_2.c.
References fp2_add, fp2_inv, fp2_mul, fp2_set_to_one(), fp2_sqr, and fp2_sub.
Referenced by cgl_hash_init_2().
void isogeny_walks_from_montgomery_model_3 | ( | fp2_t * | output_a1, |
fp2_t * | output_a3, | ||
fp2_t | input_A, | ||
fp2_t | input_xP ) |
Definition at line 62 of file isogeny_walks_3.c.
References fp2_add, fp2_mul, fp2_set_to_one(), and fp2_sqr.
Referenced by cgl_hash_init_3().
Definition at line 124 of file isogeny_walks_3.c.
References fp2_add, fp2_copy, fp2_curt(), fp2_half(), fp2_inv, fp2_mul, fp2_neg, fp2_sqr, fp2_sqrt_slow(), fp2_sub, fp_add, fp_mul, fp_neg(), fp_set_to_one(), fp_sub, fp2_t::im, and fp2_t::re.
Referenced by cgl_hash_init_3().
Definition at line 18 of file isogeny_walks_3_fp.c.
References fp_add, fp_cset(), fp_cswap, fp_curt(), fp_is_equal(), fp_is_square(), fp_mul, fp_neg(), fp_sqr, fp_sqrt(), and fp_sub.
Referenced by isogeny_walks_3_fp(), and isogeny_walks_3_fp().
Definition at line 303 of file isogeny_walks_2.c.
References fp2_add, fp2_inv, fp2_mul, fp2_set_to_one(), fp2_sqr, and fp2_sub.
Referenced by cgl_hash_init_2().
void isogeny_walks_sample_bit_string | ( | uint8_t * | output | ) |
Definition at line 329 of file isogeny_walks_2.c.
References BIT_LENGTH_PATH, and randombytes().
Referenced by main().
void isogeny_walks_sample_trit_string | ( | uint8_t * | output | ) |
Definition at line 212 of file isogeny_walks_3.c.
References i, randombytes(), and TRITLENGTH_PATH.
Referenced by main().
Definition at line 87 of file isogeny_walks_3.c.
References fp2_add, fp2_inv, fp2_mul, fp2_sqr, fp2_sub, and num.
Referenced by cgl_hash_digest_3().
Definition at line 144 of file isogeny_walks_3_fp.c.
References fp_add, fp_curt(), fp_mul, fp_sqr, and fp_sub.
Referenced by isogeny_walks_3_fp(), and isogeny_walks_3_fp().