Changeset View
Changeset View
Standalone View
Standalone View
b/tests/benchmark.c
Context not available. | |||||
gcry_sexp_t data; | gcry_sexp_t data; | ||||
gcry_sexp_t sig = NULL; | gcry_sexp_t sig = NULL; | ||||
int count; | int count; | ||||
unsigned nbits = p_sizes[testno]; | |||||
printf ("RSA %3d bit ", p_sizes[testno]); | printf ("RSA %3d bit ", nbits); | ||||
fflush (stdout); | fflush (stdout); | ||||
if (in_fips_mode && !(nbits == 2048 || nbits == 3072)) | |||||
{ | |||||
puts ("[skipped in fips mode]"); | |||||
continue; | |||||
} | |||||
err = gcry_sexp_build (&key_spec, NULL, | err = gcry_sexp_build (&key_spec, NULL, | ||||
gcry_fips_mode_active () | gcry_fips_mode_active () | ||||
? "(genkey (RSA (nbits %d)))" | ? "(genkey (RSA (nbits %d)))" | ||||
: "(genkey (RSA (nbits %d)(transient-key)))", | : "(genkey (RSA (nbits %d)(transient-key)))", | ||||
p_sizes[testno]); | nbits); | ||||
if (err) | if (err) | ||||
die ("creating S-expression failed: %s\n", gcry_strerror (err)); | die ("creating S-expression failed: %s\n", gcry_strerror (err)); | ||||
Context not available. | |||||
err = gcry_pk_genkey (&key_pair, key_spec); | err = gcry_pk_genkey (&key_pair, key_spec); | ||||
if (err) | if (err) | ||||
die ("creating %d bit RSA key failed: %s\n", | die ("creating %d bit RSA key failed: %s\n", | ||||
p_sizes[testno], gcry_strerror (err)); | nbits, gcry_strerror (err)); | ||||
pub_key = gcry_sexp_find_token (key_pair, "public-key", 0); | pub_key = gcry_sexp_find_token (key_pair, "public-key", 0); | ||||
if (! pub_key) | if (! pub_key) | ||||
Context not available. | |||||
printf (" %s", elapsed_time (1)); | printf (" %s", elapsed_time (1)); | ||||
fflush (stdout); | fflush (stdout); | ||||
x = gcry_mpi_new (p_sizes[testno]); | x = gcry_mpi_new (nbits); | ||||
gcry_mpi_randomize (x, p_sizes[testno]-8, GCRY_WEAK_RANDOM); | gcry_mpi_randomize (x, nbits-8, GCRY_WEAK_RANDOM); | ||||
err = gcry_sexp_build (&data, NULL, | err = gcry_sexp_build (&data, NULL, | ||||
"(data (flags raw) (value %m))", x); | "(data (flags raw) (value %m))", x); | ||||
gcry_mpi_release (x); | gcry_mpi_release (x); | ||||
Context not available. | |||||
if (no_blinding) | if (no_blinding) | ||||
{ | { | ||||
fflush (stdout); | fflush (stdout); | ||||
x = gcry_mpi_new (p_sizes[testno]); | x = gcry_mpi_new (nbits); | ||||
gcry_mpi_randomize (x, p_sizes[testno]-8, GCRY_WEAK_RANDOM); | gcry_mpi_randomize (x, nbits-8, GCRY_WEAK_RANDOM); | ||||
err = gcry_sexp_build (&data, NULL, | err = gcry_sexp_build (&data, NULL, | ||||
"(data (flags no-blinding) (value %m))", x); | "(data (flags no-blinding) (value %m))", x); | ||||
gcry_mpi_release (x); | gcry_mpi_release (x); | ||||
Context not available. |