#include <time.h>
#include <secsidh/secsidh.h>
#include "cycle.h"
#include "fp-counters.h"
#include "csidh.h"
#include "csidh_api.h"
#include <inttypes.h>
#include <assert.h>
#include <stdio.h>
#include <string.h>
Go to the source code of this file.
◆ BITS
◆ CEVALUATOR
◆ CONSTNAMESPACE
◆ CPASTER
◆ cprintf
◆ derive
◆ FEVALUATOR
◆ FNAMESPACE
◆ FPASTER
◆ keygen
◆ PK_SIZE
◆ pk_size
◆ SK_SIZE
◆ sk_size
◆ SS_SIZE
◆ ss_size
◆ main()
Definition at line 56 of file csidh.c.
57{
65
66
67
68 printf(
"\033[0;33m// --------------\033[0m\n");
69 printf(
"\033[0;33m// Key generation\033[0m\n");
70
71
72
73 printf(
"\n\033[0;35m// Alice\033[0m\n");
78
80 cprintf(
"Running-time (millions): %2.03lfM + %2.03lfS + %2.03lfa = \033[1;35m%2.03lfM\033[0m\n", (1.0 *
fpmul) / 1000000.0, (1.0 *
fpsqr) / 1000000.0, (1.0 *
fpadd) / 1000000.0, (1.0 * (
fpmul +
fpsqr)) / 1000000.0);
81 printf(
"Clock cycles (millions): \033[1;35m%7.03lf\033[0m\n", ( 1.0 * (
cc1 -
cc0)) / 1000000.0);
82
83
84
85 printf(
"\n\033[0;34m// Bob\033[0m\n");
90
92 cprintf(
"Running-time (millions): %2.03lfM + %2.03lfS + %2.03lfa = \033[1;34m%2.03lfM\033[0m\n", (1.0 *
fpmul) / 1000000.0, (1.0 *
fpsqr) / 1000000.0, (1.0 *
fpadd) / 1000000.0, (1.0 * (
fpmul +
fpsqr)) / 1000000.0);
93 printf(
"Clock cycles (millions): \033[1;34m%7.03lf\033[0m\n", ( 1.0 * (
cc1 -
cc0)) / 1000000.0);
94
95
96
97 printf(
"\n\033[0;33m// -------------------------\033[0m\n");
98 printf(
"\033[0;33m// Secret sharing generation\033[0m\n");
99
100
101
102 printf(
"\n\033[0;35m// Alice\033[0m\n");
107 cprintf(
"Running-time (millions) [without validation]: %2.03lfM + %2.03lfS + %2.03lfa = \033[1;35m%2.03lfM\033[0m\n",
109 printf(
"Clock cycles (millions) [including validation]: \033[1;35m%7.03lf\033[0m\n", ( 1.0 * (
cc1 -
cc0)) / 1000000.0);
110
111
112
113 printf(
"\n\033[0;34m// Bob\033[0m\n");
118 cprintf(
"Running-time (millions) [without validation]: %2.03lfM + %2.03lfS + %2.03lfa = \033[1;34m%2.03lfM\033[0m\n",
120 printf(
"Clock cycles (millions) [including validation]: \033[1;34m%7.03lf\033[0m\n", ( 1.0 * (
cc1 -
cc0)) / 1000000.0);
121
122
123
125
126
127 printf(
"\n\033[0;32m// Successfully secret sharing computation!\033[0m\n");
128 return 0;
129}
References a, assert(), cprintf, derive, keygen, main(), PK_SIZE, pk_size, SK_SIZE, sk_size, SS_SIZE, and ss_size.