-
Notifications
You must be signed in to change notification settings - Fork 17
/
File descriptions.txt
29 lines (22 loc) · 1.28 KB
/
File descriptions.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
rlwe_benchmark.c
- time multiple iterations of the high level cryptographic functions
rlwe_main.c
- basic test harness that calls the high level cryptographic functions
- data sizes are hard-coded
rlwe_kex.c
- high-level cryptographic functions that wrap around mathematical operations for polynomial sampling, polynomial multiplication, and reconciliation/rounding
- data sizes are hard-coded
- has compile-switch to swap between calling constant-time algorithms (*_ct) and non-constant-time algorithms
rlwe_a.h
- a standardized 1024-element polynomial that all communicating parties fix in advance
- this is generated uniformly at random
rlwe_table.h
- a table that's used for randomly sampling a 192-bit integer with a certain (Gaussian) distribution
- this table must be generated using a certain algorithm that I'll provide later
rlwe.c
- implementation of the main mathematical operations
- some operations have two implementations: constant_time (*_ct) and non-constant-time
- data sizes are hard-coded, but it should not be too hard to change these to arbitrary size
fft.c
- implementation of polynomial multiplication using fast Fourier transform
- data sizes are hard-coded; here it might be tricky to generalize these to arbitrary size, I am looking into getting more guidance on what to do here