37 Commits

Author SHA1 Message Date
c6296ae545 function enc_ngs: Now FFT(msg) is computed before the loop instead of inside it 2022-04-06 14:35:23 +02:00
834d9f2ab9 Implemented function to encrypt polynomials into vector ciphertext
Several parts of the key generation were actually encrypting polynomials
and integers into vector ciphertexts, thus, now they just call the new
function enc_ngs. As a result, the key generation code is simpler to
understand. Morevoer, future applications may want to generate vector
ciphertexts, thus, the function enc_ngs is interesting on its own.
2022-04-06 14:35:23 +02:00
48c15ae82c Update README with XOR and NOT 2022-03-27 12:26:34 +02:00
fb57bf1638 Merge pull request #1 from KULeuven-COSIC/xor_not_gates
Homomorphic XOR and NOT gates
2022-03-27 12:12:20 +02:00
b9ef82bb9a minor changes to simplify code of xor and not gates 2022-03-24 22:07:27 +01:00
b554fbbe54 if(gate == XOR) was appearing two times in a test. Just removed it. 2022-03-11 14:05:09 +01:00
3e02733b2d Removed some blank lines 2022-03-11 13:58:18 +01:00
13bada8957 Fixed some comments on lwehe.h and ntruhe.h 2022-03-11 13:55:33 +01:00
07fa6efac8 Fixed bug when on SchemeNTRU::not_gate
When the same variable was passed as the first and the second argument
of the not_gate, the result was always zero, i.e.,
after SchemeNTRU::not_gate(c, c), c was an encryption of 0
2022-03-11 13:50:59 +01:00
8b3ee51696 Created tests for not gates of both NTRU and LWE schemes 2022-03-11 12:59:05 +01:00
fe261e2a1c Created ct_not_const to speed up SchemeNTRU::not_gate 2022-03-11 12:58:21 +01:00
de62bcd412 SchemeNTRU::not_gate implemented 2022-03-11 12:45:36 +01:00
60c01e16d8 SchemeLWE::not_gate implemented 2022-03-11 12:45:03 +01:00
d9c77a45a7 Tests for NTRUScheme::xor_gate 2022-03-11 10:55:42 +01:00
a1665c2ddc NTRU scheme: homomorphic XOR gate implemented 2022-03-11 10:48:48 +01:00
f943091bf0 Tests for LWEScheme::xor_gate 2022-03-11 10:22:28 +01:00
b2aa2d2cda LWE scheme: homomorphic XOR gate implemented 2022-03-11 10:22:00 +01:00
5218543f67 Makefile now deletes libfinal.a to avoid linkage errors 2022-03-11 10:20:40 +01:00
8a44bab96d NTRU scheme: tests for composition of gates (e.g. OR(OR(OR(a, b),c), d)) 2022-03-10 15:38:50 +01:00
9dd4075e85 Improved print messages 2022-03-10 15:17:44 +01:00
0c7e15fc01 LWE scheme: tests for composition of gates (e.g. NAND(NAND(NAND(a, b), c), d)) 2022-03-10 15:10:38 +01:00
3d7110d5d1 importint cassert in params.h to avoid compilation errors 2022-03-10 14:49:30 +01:00
945199379b Merge branch 'main' of github.com-iliailia:KULeuven-COSIC/FINAL into main 2022-01-20 21:01:05 +01:00
24eceefae9 Refactor tests 2022-01-20 21:00:39 +01:00
c0486e11a1 Fix misprints 2022-01-20 20:59:35 +01:00
7423198916 Add code example 2022-01-20 19:42:04 +01:00
aacc7a4efd Added iacr.eprint to README 2022-01-20 17:42:31 +01:00
c78825b917 Merge branch 'main' of github.com-iliailia:KULeuven-COSIC/FINAL into main 2022-01-19 16:50:13 +01:00
305a6cc87d Compile library and tests separately 2022-01-19 16:49:29 +01:00
756555cd69 Update README.md 2022-01-19 16:08:05 +01:00
df8fc0576e Add requirements 2022-01-18 23:52:28 +01:00
3e273714b8 Refacto headers 2022-01-18 23:46:26 +01:00
bd0c6ed153 Refactor tests and source 2022-01-18 23:43:13 +01:00
4cb5ec958d Ignore IDE files 2022-01-18 15:19:56 +01:00
f7c29bedb1 Add files via upload 2022-01-18 15:18:50 +01:00
850283df30 Update README.md 2022-01-18 15:13:37 +01:00
3ab8db2724 Initial commit 2022-01-18 15:12:57 +01:00