Commit Graph

92 Commits

Author SHA1 Message Date
hasufell a265a89a0d
ALL: use const modifiers on parameters where possible 2014-06-09 00:10:35 +02:00
hasufell 7f23aa2a35
ALL: fix memory leaks 2014-05-30 19:54:50 +02:00
hasufell f7b3462dc6
POLY: consistent var naming 2014-05-30 18:42:09 +02:00
hasufell 67ec5615c7
POLY: readability 2014-05-28 23:11:13 +02:00
hasufell 4def114c5c
POLY: style/readability 2014-05-28 20:57:55 +02:00
hasufell 2ec61bc87e
ALL: improve readability 2014-05-28 01:17:19 +02:00
hasufell e4c5094af9
ALL: improve readability 2014-05-25 23:04:22 +02:00
hasufell 4a07ceadcd
ALL: use uint32_t instead of unsigned int 2014-05-25 22:47:54 +02:00
hasufell 30b917b3be
POLY: free the array pointer as well 2014-05-25 20:57:40 +02:00
hasufell 4d8b6a78e5
POLY: provide cleanup function for polynomial arrays 2014-05-25 20:57:40 +02:00
hasufell 8703e6975e
POLY: fix header inclusion 2014-05-25 19:00:36 +02:00
hasufell fd0ba50c85
POLY: rework poly_new()
Don't allocate anything here, just operate on
the parameters.
2014-05-25 04:16:48 +02:00
hasufell b71e4b1ce2
POLY: improve inline doc 2014-05-25 03:57:51 +02:00
hasufell 3905b4aba9
POLY: improve doxygen comments 2014-05-25 03:56:39 +02:00
hasufell 13b54fa7f5
DOC: add brief/file comments 2014-05-25 02:15:24 +02:00
hasufell 89447a7abb
POLY: rm obsolete doxygen comment 2014-05-25 01:48:55 +02:00
hasufell f3ac38a6c0
POLY: add print functions 2014-05-25 01:40:07 +02:00
hasufell eb8fa515b4
DOC: fix more doxygen comments 2014-05-25 01:13:34 +02:00
hasufell c075f4a0a3
ALL: Convert codebase to flint
POLY, ENC, DEC all converted. RAND will have to be revised.
2014-05-24 23:16:25 +02:00
hasufell 2e222ccad3
Merge branch 'master' of ssh://gitlab.hasufell.de:22022/wiseqube/quantumcrypto
Conflicts:
	src/poly.h
2014-05-19 21:33:38 +02:00
malte 10f6ebc9e6 Merge branch 'master' of ssh://gitlab.hasufell.de:22022/pcq/quantumcrypto
Conflicts:
	src/poly.c
	src/poly.h
	src/rand.c

merged with master repo
2014-05-13 16:54:31 +02:00
Alexander Rolfes dd68d1a094 Merge branch 'master' of ssh://gitlab.hasufell.de:22022/pcq/quantumcrypto
Conflicts:
	src/poly.h solved
	src/ntru_decrypt.c fixed

ntru_decrypt.c used changed function heading
2014-05-13 09:51:47 +02:00
hasufell 782ccf0524
POLY: improve error handling 2014-05-13 00:20:46 +02:00
hasufell 30e18177e8
POLY: allow signed int in MP_SET_INT
Now you can pass MP_SET_INT(&foo, -1) without having
to call mp_neg() later etc.
2014-05-13 00:12:03 +02:00
hasufell 23573d07c8 DOC: fix doxygen comment in pb_mod2_to_modq() 2014-05-12 20:32:34 +02:00
hasufell 9ddf9709e2 POLY: add pb_mod2_to_modq()
This should make pb_inverse_poly_q() a bit more readable.
TODO: make the algorithm more descriptive in general.
2014-05-12 20:32:34 +02:00
hasufell d9584b2e17 POLY: introduce delete_polynom_multi()
Just a wrapper around delete_polynom() to handle multiple args.
Must be called with NULL as last argument!
2014-05-12 20:32:34 +02:00
hasufell 476379b675 POLY: use our MACROS for error handling
All mp_* and pb_* functions that return an error code
should only be called via a MACRO which handles the error.
2014-05-12 20:32:34 +02:00
hasufell 01c301afdd MEM: introduce our own ntru_malloc() function
Use this instead of malloc().
2014-05-12 20:32:34 +02:00
hasufell 60dbab44f5 POLY: fix syntax error within comment
RAND: merged conflict
2014-05-12 20:29:59 +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
hasufell 99ebda181a POLY: fix pb_inverse_poly_q()
Should be correct now. Had to add get_degree(), because
pb_clamp() in conjunction with pb_cmp() does not give
expected results, see https://github.com/libtom/libtompoly/issues/3
...so don't use it.
2014-05-12 20:17:42 +02:00
hasufell 85c48647f5 POLY: cleanup pb_inverse_poly_q()
Also avoid side effects.
2014-05-12 20:17:42 +02:00
hasufell 6990193dcd POLY: cleanup pb_starmultiply()
* avoid side effects
* use MP_DIV instead of MP_MOD
* move mp_modulus initialization to outer scope
2014-05-12 20:17:42 +02:00
hasufell 01785678f0 DOC: fix doxygen comment in delete_polynom() 2014-05-12 20:17:42 +02:00
hasufell ed1fb0f0a9 POLY: add erase_polynom() function 2014-05-12 20:17:42 +02:00
hasufell f8b1649279 POLY: use mp_neg() instead of directly modifying struct 2014-05-12 20:17:42 +02:00
hasufell 5c85862d12 POLY: improve error handling
Use MP_ADD, MP_MUL, PB_ADD, PB_MUL etc instead of the mp_add,...
functions to make use of error handling.
2014-05-12 20:17:42 +02:00
hasufell 85ba70a9c5 POLY: first try of inverting polynomials 2014-05-12 20:17:42 +02:00
hasufell 3184e9093f POLY: rm unnecessary cast 2014-05-12 20:17:42 +02:00
hasufell 3e6345cd47 POLY: fix typo 2014-05-12 20:17:42 +02:00
hasufell c4f6ad4504 POLY: fix error messages 2014-05-12 20:17:42 +02:00
hasufell 2d2ccfbf3f POLY: first try of pb_starmultiply() 2014-05-12 20:17:42 +02:00
hasufell 0d179a0e7d POLY: don't clamp polyonmial in build_polynom()
Otherwise we might hit problems when using this as an
out-polynom in a arithmetic functions. The caller can clamp
it himself, if he needs so.
2014-05-12 20:17:42 +02:00
hasufell fc4ee3b70b POLY: add build_polynom() method
We can build a polynom via an array of integers or just an empty
one, so that it is initialized and properly allocated.
2014-05-12 20:17:42 +02:00
hasufell be28e18cfb DOC: fix typo 2014-05-12 20:17:42 +02:00
hasufell 0470a5fa6e POLY: use size_t 2014-05-12 20:13:22 +02:00
hasufell 22f713fa98 DOC: improve memory handling instructions 2014-05-12 20:13:22 +02:00
Christoph Prüßner 4030335661 POLY: implemented pb_normalize
normalizes a polynom by defining a numerical range
for each factor of a polynom.
2014-05-12 13:46:59 +02:00
hasufell e29064a666
POLY: fix pb_inverse_poly_p and convert to pb_mp_mul()
Was still using the old build_polynom() API.
2014-04-30 17:29:16 +02:00