Commit Graph

19 Commits

Author SHA1 Message Date
Malte
f459f09e57 RAND: changed from make_small_int() to get_random_ternary() 2014-05-12 20:32:34 +02:00
Malte
3fc925c396 RAND: removed camelCase
changed from randomDataLen to random_DataLen
2014-05-12 20:32:34 +02:00
Malte
cb69ea8689 RAND: changed the function declaration to fit the the given needs better. 2014-05-12 20:32:34 +02:00
Malte
4df4a37f9a RAND: added the missing function declaration and comments.
static mp_int *make_big_int(mp_int *upper_bound, mp_int *lower_bound,
        mp_digit randim_int)
static int check_polynom(pb_poly *polynom)
needs to be filled with code.
2014-05-12 20:32:34 +02:00
Malte
d871a9104f RAND: fixed some unnecessary import 2014-05-12 20:32:34 +02:00
Malte
1e586c178c rand: added some missing void parameter 2014-05-12 20:32:34 +02:00
Malte
0bdddc12e7 rand: Refactoring finished
now there are only 4 static functions left:
static mp_digit read_int_dev_random();
static mp_digit read_int_dev_urandom();
static mp_digit make_small_int(mp_digit random_int, int* sign);
static mp_digit make_big_int(mp_digit random_int, int* sign);
Every function is used twice.
the next goal to copy free code is to make a single function
with function pointer out of these 4:
pb_poly *ntru_get_urnd_poly_small(ntru_context *ctx);
pb_poly *ntru_get_rnd_poly_small(ntru_context *ctx);
pb_poly *ntru_get_urnd_poly_big(ntru_context *ctx);
pb_poly *ntru_get_rnd_poly_big(ntru_context *ctx);
But this need to be checkt by a other group member
2014-05-12 20:32:34 +02:00
Malte
21022c9ff8 rand: extractet some double code into new functions
this is the first step, in the next one i a going to remove
static mp_digit get_urnd_int_small(int *sign);
static mp_digit get_rnd_int_small(int *sign);
static mp_digit get_urnd_int_big(int *sign);
static mp_digit get_rnd_int_big(int *sign);

RAND: merged a conflict
2014-05-12 20:32:14 +02:00
Malte
90a01a03ec rand: getting small and big polynoms is working
pb_poly *ntru_get_urnd_poly_big(ntru_context *ctx)
pb_poly *ntru_get_rnd_poly_big(ntru_context *ctx)
are written but the testing isen working and
i think it is a bad idea to not use function poniters
at the moment we have about 4 functions that do all the same thing
and differ only in the subfunction call.
But at the moment i cat decide of we shold use
function pinter

RAND: merged conflict
2014-05-12 20:28:22 +02:00
417ce9c0f2 RAND: use unsigned long instead of mp_digit
if we use mp_set_int() instead of mp_set(), then we can use
full unsigned long integers instead of single digits. This
seems a lot safer, especially for future versions of the
random algorithm.

RAND: merged a conflict
2014-05-12 20:16:25 +02:00
Malte
04d5d6d38f rand:ntru_get_rnd_poly_small: written a function to generate a random polynom
like get_urnd_int_small but with the random source from /dev/random
instead of /dev/urandom
2014-05-12 20:13:22 +02:00
Malte
71b8f4cbeb Added static mp_digit get_rnd_int_small(int *sign)
but it takes about ~40minutes to generate a x^500
polynom with /dev/random.
2014-05-12 20:13:22 +02:00
cafc977c64
DOC: improve memory management documentation 2014-04-15 14:23:27 +02:00
617e32b9cf
RAND: fix memory leak
pb_init() which is called by init_polynom_size() will call
mp_init_copy() on chara which means that chara being a pointer
itself is useless. We can clear it directly after it has been
copied.
2014-04-15 14:15:41 +02:00
255bc5b769
RAND: close the correct file descriptor 2014-04-15 13:43:03 +02:00
f6e879cba8
LICENSE: fix header 2014-04-15 13:35:04 +02:00
5df1ebbb45
ALL: prefix external API structs/functions with ntru_ 2014-04-14 23:47:01 +02:00
e8ec6103aa
RAND: make mp_digit get_urnd_int_small() static
Does not seem to qualify for external API function.
2014-04-14 23:45:38 +02:00
ff40048d55
RAND: basic randomization
No sanity checks like minimum number of non-NULL coefficients
for the polynomial.
2014-04-14 22:29:36 +02:00