Commit Graph

289 Commits

Author SHA1 Message Date
2503fdcfa4
ASCII->POLY: split up to poly_ascii.c 2014-06-09 00:10:35 +02:00
b82126d180
ASCII->POLY: rm obsolete comments 2014-06-09 00:10:35 +02:00
a265a89a0d
ALL: use const modifiers on parameters where possible 2014-06-09 00:10:35 +02:00
9b8b7e9129
DEC: make sure all polynomials are shifted [-q/2, q/2] 2014-06-09 00:10:35 +02:00
19a6ab89c7
KEYGEN: fix typo 2014-05-30 22:26:36 +02:00
7f23aa2a35
ALL: fix memory leaks 2014-05-30 19:54:50 +02:00
8871b496c2
KEYGEN: support import/export of keys 2014-05-30 19:23:45 +02:00
a42b65505a
KEYGEN: we need the pubkey unshifted 2014-05-30 19:11:57 +02:00
d6cbb73865
ASCII->POLY: fix binary support, rm obsolete logic, minor fixes 2014-05-30 18:54:51 +02:00
f7b3462dc6
POLY: consistent var naming 2014-05-30 18:42:09 +02:00
c125d48209
BUILD: update clean target 2014-05-30 18:40:42 +02:00
82ae4a7a52
ASCII->POLY: rm redundant counter 2014-05-30 01:37:03 +02:00
0f2f2aec06
ASCII->POLY: update doxygen comment 2014-05-29 22:16:50 +02:00
27b20f97b7
ASCII->POLY: avoid trailing junk data 2014-05-29 22:11:05 +02:00
bdc3aad651
ENC: fix encryption
It was actually broken, since we did overwrite the
out-coefficients instead of adding to them. Fixing this
again causes the same problems as described in the
inline comment, no matter which implementation we use.
2014-05-29 16:46:35 +02:00
a050b8853a
ENC: rm redundant code 2014-05-29 00:20:16 +02:00
bb0207ba03
KEYGEN: improve error handling 2014-05-28 23:11:52 +02:00
67ec5615c7
POLY: readability 2014-05-28 23:11:13 +02:00
7759bff8f7
RAND: rm obsolete implementation 2014-05-28 21:19:57 +02:00
6142381abb
BUILD: cleanup 2014-05-28 21:18:33 +02:00
4def114c5c
POLY: style/readability 2014-05-28 20:57:55 +02:00
67a4557487
ASCII->POLY: also allow binary data 2014-05-28 20:57:40 +02:00
72d13839ee
ENC: improve error handling 2014-05-28 20:57:22 +02:00
52c1abe8ee
DEC: style fix 2014-05-28 20:56:57 +02:00
c48dad818e
DEC: improve error handling 2014-05-28 20:56:43 +02:00
2a6ad998ce
ENC: cleanup 2014-05-28 19:54:51 +02:00
ecdfbad591
ENC: style fix 2014-05-28 19:44:49 +02:00
f0eefe7885
ENC: fix encryption
In some very rare cases such as the polynom
  1, -1, -1, 1, 1, -1, -1, 1, -1, -1, 1
the encryption->decryption cycle caused an incorrect result.
This wasn't reproducible for all polynomials, just for some.

Implementing the algorithm manually instead of using
the shortcut through
  fmpz_poly_add(out, out, tmp_poly_msg);
  fmpz_poly_mod_unsigned(out, ctx->q);
seems to have solved the issue.

Still unknown what happened there.
2014-05-28 19:44:40 +02:00
f17b3fd6d0
ASCII->POLY: use malloc instead of calloc 2014-05-28 19:42:08 +02:00
0c9e53b5fb
ASCII->POLY: cosmetic cleanup 2014-05-28 19:41:51 +02:00
4440322d29
ASCII->POLY: fix broken loop 2014-05-28 19:40:39 +02:00
hasufell
593c24ff90 ASCII->POLY: fix some valgrind warnings
Especially uninitalized memory warnings.
2014-05-28 11:20:28 +02:00
bf192a0498
ASCII->POLY: use double base64 encoding for more entropy 2014-05-28 02:04:45 +02:00
51c6537777
BUILD: refactor Makefiles 2014-05-28 01:38:55 +02:00
2ec61bc87e
ALL: improve readability 2014-05-28 01:17:19 +02:00
9f6b7319bb
ASCII->POLY: refactor
Use base64 (via glib) instead of plain char cast.

Remove ascii_to_poly() since it's unreliable (we don't
really know how many polynomials we will need
for a string).
2014-05-28 01:09:52 +02:00
8b9134628c
STRING: improve doxygen comment 2014-05-27 01:08:52 +02:00
fd9ac4ecb8
STRING: add prints() for printing 2014-05-27 01:08:42 +02:00
e0b75b98e2
ASCII->POLY: refactor and make more modular
Introduced appropriate function for single polynomials
as well.
2014-05-27 01:08:17 +02:00
03d935d088
ASCII->POLY: improve doxygen comments 2014-05-26 21:59:29 +02:00
7e7ee38404
FILE: add missing include 2014-05-26 21:41:19 +02:00
c862c83f1f
FILE: fix/add doxygen comments 2014-05-26 21:39:10 +02:00
b27170d150
FILE: rename parameter 2014-05-26 21:38:54 +02:00
ff3967f932
STRING: provide function for deleting strings 2014-05-26 21:38:39 +02:00
4dbfe1e663
FILE: add file subsystem and move string to ntru_string subs. 2014-05-26 21:30:42 +02:00
7a5b899825
ENC/DEC: allow encryption/decryption of strings 2014-05-26 20:59:12 +02:00
hasufell
fcb07e6d54 ASCII->POLY: readability 2014-05-26 10:56:42 +02:00
hasufell
96a36515ab ASCII->POLY: fix possible junk data at end of string 2014-05-26 10:56:31 +02:00
e4c5094af9
ALL: improve readability 2014-05-25 23:04:22 +02:00
6aebea2cde
ASCII->POLY: improve readability 2014-05-25 22:50:39 +02:00
4a07ceadcd
ALL: use uint32_t instead of unsigned int 2014-05-25 22:47:54 +02:00
58e6a90881
ASCII->POLY: improve readability 2014-05-25 22:43:59 +02:00
47afca9fe6
ASCII->POLY: rename header guard 2014-05-25 20:57:41 +02:00
566894b230
ASCII->POLY: add file/brief doxygen comment 2014-05-25 20:57:41 +02:00
d6a2269f2f
ASCII->POLY: simplify with macros 2014-05-25 20:57:40 +02:00
1a1f610d38
ASCII->POLY: fix array size 2014-05-25 20:57:40 +02:00
30b917b3be
POLY: free the array pointer as well 2014-05-25 20:57:40 +02:00
4d8b6a78e5
POLY: provide cleanup function for polynomial arrays 2014-05-25 20:57:40 +02:00
7693805741
ASCII->POLY: reimplement 2014-05-25 20:57:32 +02:00
8703e6975e
POLY: fix header inclusion 2014-05-25 19:00:36 +02:00
853fc668f5
MEM: add REALLOC macro 2014-05-25 19:00:10 +02:00
fc1ac808a2
MEM: add ntru_calloc() function 2014-05-25 18:59:58 +02:00
hasufell
d274a1af03 BUILD: fix UNBUNDLE, rm obsolete libtom references 2014-05-25 04:40:49 +02:00
fd0ba50c85
POLY: rework poly_new()
Don't allocate anything here, just operate on
the parameters.
2014-05-25 04:16:48 +02:00
aa01859192
KEYGEN: fix missing initialisation 2014-05-25 04:07:51 +02:00
c3eb0e52f4
KEYGEN: add deletion method 2014-05-25 04:06:24 +02:00
3ea4006b1c
DEC: fix memory leak 2014-05-25 04:06:05 +02:00
b71e4b1ce2
POLY: improve inline doc 2014-05-25 03:57:51 +02:00
3905b4aba9
POLY: improve doxygen comments 2014-05-25 03:56:39 +02:00
13b54fa7f5
DOC: add brief/file comments 2014-05-25 02:15:24 +02:00
89447a7abb
POLY: rm obsolete doxygen comment 2014-05-25 01:48:55 +02:00
f3ac38a6c0
POLY: add print functions 2014-05-25 01:40:07 +02:00
bdb12ac175
BUILD: rm obsolete tompoly/tommath references 2014-05-25 01:36:44 +02:00
eb8fa515b4
DOC: fix more doxygen comments 2014-05-25 01:13:34 +02:00
32f2eb2295
KEYGEN: add doxygen comments 2014-05-25 01:11:56 +02:00
dda90cabcf
DEC: use a central lift after we are done 2014-05-25 01:04:30 +02:00
23d95ae992
KEYGEN: fix priv_inv key 2014-05-25 01:04:09 +02:00
8fd5a6c829
ENC: fix encryption 2014-05-25 00:58:34 +02:00
1443b11fa8
KEYGEN: fix keys 2014-05-25 00:58:22 +02:00
805559a8ca
BUILD: add keypair to build 2014-05-25 00:58:01 +02:00
574bbec067
KEYGEN: first implementation 2014-05-24 23:16:26 +02:00
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
fb7a46c363
ENC: fix indenting level 2014-05-24 23:16:20 +02:00
7b0a1f1920
BUILD: Fix Makefiles for flint 2014-05-24 23:16:13 +02:00
a15ef46ea6
ENC: fixup after merge 2014-05-19 22:26:10 +02:00
cd1611c018
RAND: cleanup after merge 2014-05-19 21:58:56 +02:00
2e222ccad3
Merge branch 'master' of ssh://gitlab.hasufell.de:22022/wiseqube/quantumcrypto
Conflicts:
	src/poly.h
2014-05-19 21:33:38 +02:00
ceecf68b59
Merge branch 'master' of ssh://gitlab.hasufell.de:22022/malte/quantumcrypto 2014-05-19 21:32:56 +02:00
8fb50d61dd
Merge branch 'master' of ssh://gitlab.hasufell.de:22022/cgawlik/quantumcrypto 2014-05-19 21:30:13 +02:00
malte
b997dc65fd POLY->ASCII: added inline comments. 2014-05-18 18:28:39 +02:00
malte
3bf66ce274 POLY->ASCII: Added a function to get a string out of a given polynom. 2014-05-18 18:08:36 +02:00
malte
d498ddf1a8 ASCII->POLY: written a function to convert a char* string into a polynom.
The function returns a newly allocated poynom of the string size * 7
7 bits per ASCII symbol.
the function need to be warped so the maximal poynom is corresponding to
the NTRU context.
2014-05-18 10:28:25 +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
782ccf0524
POLY: improve error handling 2014-05-13 00:20:46 +02:00
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
Malte
7c5d899055 RAND: improve some spelling 2014-05-12 20:35:06 +02:00
Malte
8db6a83ae3 RAND: changed read_int_dev_urandom() to get_int_dev_urandom() 2014-05-12 20:35:06 +02:00
Malte
2f9ebd52f8 RAND: changed read_int_dev_urandom() to get_int_dev_urandom() 2014-05-12 20:35:06 +02:00
Malte
979ae61726 RAND: changed ntru_get_poly_big() to ntru_get_random_poly() 2014-05-12 20:35:06 +02:00