#include <stdlib.h>
#include <stdio.h>
#include <include/ecctk-prototype.h>
#include <include/ecctk-ecc.h>
#define MT_RAND 1
#define FIPS186_RAND 2
#define ANSIX9_RAND 3
void gen_random()
{
s4byte random_size = 1024;
u1byte *random_val;
u1byte algo = ANSIX9_RAND;
switch (algo)
{
case MT_RAND:
random_val = GenerateRandom(random_size);
break;
case FIPS186_RAND:
random_val = GenerateRandomFips186(random_size);
break;
case ANSIX9_RAND:
random_val = GenerateRandomAnsiX9_17(random_size);
break;
}
if (random_val == NULL)
fprintf(stderr, "Generate random value failed\n");
else
{
s4byte i, nb_byte;
nb_byte = (random_size >> 3);
if (random_size & 7)
nb_byte++;
fprintf(stdout, "Random value = ");
for (i = 0; i < nb_byte; i++)
fprintf(stdout, "%02x", random_val[i]);
fprintf(stdout, "\n");
free(random_val);
}
}