Christoph Prüßner
4e6bb38260
numerous fixes
2014-05-03 17:18:23 +02:00
Christoph Prüßner
c326654f14
Merge remote-tracking branch 'OberMaster/master'
2014-05-03 16:13:25 +02:00
Christoph Prüßner
5254cf93f3
changed return type of ntru_decrypt, implemented second starmultiply,
...
fixed numerical operations to mp_operations
2014-05-03 16:02:09 +02:00
Christoph Prüßner
fa97531eac
implemented the coefficient shift into a range of -q/2 and q/2
2014-05-03 14:57:05 +02:00
Christoph Prüßner
b4a7870e97
fixed pointer arithmetical mistakes
2014-05-03 14:07:12 +02:00
Christoph Prüßner
7349c7e8be
used pb_starmultiply for the first multiplication and added p, q, N
2014-05-03 14:03:03 +02:00
Christoph Prüßner
4de50e2390
removed redundant multiplication functions
2014-05-03 13:51:00 +02:00
Christoph Prüßner
06d359936a
deleted .project file
2014-05-03 13:19:25 +02:00
Christoph Prüßner
4d438bb925
changed gitignore
2014-05-03 13:18:15 +02:00
Christoph Prüßner
ecdc32f5e0
first implementation of "pseudocode algorithm" (ms_corourke.pdf)
2014-05-02 13:00:00 +02:00
Christoph Prüßner
9cfb19ea78
added commentary and implemented the pseudocode algorithm
...
(ms_corourke.pdf)
2014-05-02 12:18:33 +02:00
hasufell
180d2acc1b
BUILD: remove obsolete object
2014-04-28 12:21:20 +02:00
hasufell
7c8a7580f5
BUILD: remove non-existing header from build
2014-04-28 12:19:26 +02:00
hasufell
db18108a45
BUILD: add missing include
2014-04-28 12:18:14 +02:00
Christoph Prüßner
bd3396b225
Merge remote-tracking branch 'OberMaster/master'
2014-04-23 14:03:23 +02:00
Christoph Prüßner
98bdd670d8
added ntru_decrypt function to ntru_decrypt.c
2014-04-23 13:58:57 +02:00
Christoph Prüßner
74ddfe65e7
remodified gitignore and defined function "ntru_decrypt(..)"
2014-04-23 13:45:03 +02:00
Christoph Prüßner
00513d6701
modified .gitignore
2014-04-23 13:28:18 +02:00
Christoph Prüßner
ac004e5cfe
Added the following files: ntru_decrypt.(c|h)
2014-04-23 13:19:37 +02:00
Christoph Prüßner
1d78b707cf
Deleted "blah.txt" (test-file)
2014-04-23 12:35:40 +02:00
b2db30e540
Merge branch 'master' into 'master'
...
a few cleanups, memory management and more macros for readability
2014-04-23 11:42:42 +02:00
Christoph Prüßner
b007530dfb
Merge remote-tracking branch 'OberMaster/master'
2014-04-23 10:49:00 +02:00
6b15bd1614
DOC: fix doxygen comment in pb_mod2_to_modq()
2014-04-22 20:46:13 +02:00
12a54416fb
BUILD: ignore -Wunused-function... this is a library
2014-04-22 20:46:13 +02:00
ae01f6e3cf
Merge branch 'poly'
2014-04-22 20:46:13 +02:00
1231328e51
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-04-22 20:46:13 +02:00
320af3c617
POLY: introduce delete_polynom_multi()
...
Just a wrapper around delete_polynom() to handle multiple args.
Must be called with NULL as last argument!
2014-04-22 20:46:12 +02:00
6594a022fe
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-04-22 20:46:12 +02:00
e33bd66d05
BUILD: update Makefile for mem.o
2014-04-22 20:46:12 +02:00
2488e4b33a
MEM: introduce our own ntru_malloc() function
...
Use this instead of malloc().
2014-04-22 20:46:04 +02:00
565ce61273
POLY: fix syntax error within comment
2014-04-20 16:46:47 +02:00
6f1f1b529c
Merge branch 'master' into 'master'
...
some polishing and build_polynom() function
2014-04-20 13:52:21 +02:00
302cd5e4d8
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-04-17 23:43:29 +02:00
3428dedc2c
BUILD: fix possible linker errors
2014-04-17 17:37:44 +02:00
4bd341e83e
POLY: cleanup pb_inverse_poly_q()
...
Also avoid side effects.
2014-04-17 17:37:30 +02:00
cc82e4e3bd
POLY: cleanup pb_starmultiply()
...
* avoid side effects
* use MP_DIV instead of MP_MOD
* move mp_modulus initialization to outer scope
2014-04-17 17:36:57 +02:00
03a05f2dad
DOC: fix doxygen comment in delete_polynom()
2014-04-17 17:35:20 +02:00
2300587fec
POLY: add erase_polynom() function
2014-04-17 17:34:48 +02:00
8ea687bdf5
POLY: use mp_neg() instead of directly modifying struct
2014-04-17 17:33:05 +02:00
a49a5d2e8c
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-04-17 02:09:49 +02:00
56b20220ba
POLY: first try of inverting polynomials
2014-04-16 23:23:41 +02:00
2a16102b9f
POLY: rm unnecessary cast
2014-04-16 23:18:38 +02:00
1179082ac1
POLY: fix typo
2014-04-16 23:17:48 +02:00
e4cf4331d9
BUILD: fix linker errors when playing in main.c
2014-04-15 23:11:55 +02:00
cb4d274c58
POLY: fix error messages
2014-04-15 22:54:11 +02:00
df1df23e09
POLY: first try of pb_starmultiply()
2014-04-15 22:50:42 +02:00
abf047a264
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-04-15 22:50:11 +02:00
050dab6243
ALL: set context members to unsigned int
2014-04-15 18:49:33 +02:00
e60d9c9bac
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-04-15 18:49:17 +02:00
b7b4ffbbea
DOC: fix typo
2014-04-15 18:47:58 +02:00