Anjan Roy
|
85e3c4e495
|
rename test function to shorter name
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 18:46:57 +04:00 |
|
Anjan Roy
|
5589c97b69
|
given hex string, parse it as byte array
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 18:43:32 +04:00 |
|
Anjan Roy
|
fe5d1c74e8
|
don't compute min, max, mean and median exeuction time of benchmark, using multiple repeatitions
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 18:31:54 +04:00 |
|
Anjan Roy
|
2892144772
|
update kyber KEM benchmark routines, remove kyber PKE benchmark helper routines
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 18:22:51 +04:00 |
|
Anjan Roy
|
3f7a5fd932
|
rename compile-time executable functions, make them shorter
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 18:19:55 +04:00 |
|
Anjan Roy
|
b6516e95d3
|
capture kyber KAT tests (run using pytest) using pattern
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 18:12:26 +04:00 |
|
Anjan Roy
|
9b57030e86
|
update C wrapper interface to conform to new KEM API
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 18:11:54 +04:00 |
|
Anjan Roy
|
e50e9b943c
|
remove kyber PKE tests, update kyber KEM tests as per new API
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:31:58 +04:00 |
|
Anjan Roy
|
c42da637ac
|
remove kyber KEM wrapper function which used to take PRNG as input
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:31:25 +04:00 |
|
Anjan Roy
|
89c78e8705
|
remove compile-time executable functions for computing byte length of PKE keypair/ cipher text
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:26:13 +04:00 |
|
Anjan Roy
|
36617b1753
|
remove static keyword from function definition
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:25:33 +04:00 |
|
Anjan Roy
|
b906216e33
|
refactor kyber1024 KEM API
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:21:02 +04:00 |
|
Anjan Roy
|
01bcfb8de4
|
mention row number of table from where parameters are taken
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:17:28 +04:00 |
|
Anjan Roy
|
e56ac042b5
|
refactor kyber768 KEM API
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:16:11 +04:00 |
|
Anjan Roy
|
a12f409cbb
|
updated kyber512 KEM API
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 17:10:43 +04:00 |
|
Anjan Roy
|
672307da40
|
remove redundant files which used to hold parts of kyber KEM
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 16:52:16 +04:00 |
|
Anjan Roy
|
e863bb4633
|
move all kyber KEM related routines (i.e. keygen/ encaps/ decaps) under same file
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 16:51:22 +04:00 |
|
Anjan Roy
|
660d7c9b28
|
get rid of kyber PKE routines - don't expose them for public usage
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 16:43:24 +04:00 |
|
Anjan Roy
|
da67ac1732
|
keep PKE keygen/ encrypt/ decrypt routines in same file (under namespace pke::)
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 16:42:42 +04:00 |
|
Anjan Roy
|
1c20822c37
|
gitinore development time files, don't commit them to VCS
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-06-02 16:41:45 +04:00 |
|
Anjan Roy
|
7b10747031
|
Merge pull request #31 from itzmeanjan/update-benchmark
Update Benchmark
|
2023-04-02 19:47:14 +04:00 |
|
Anjan Roy
|
022cdd9f30
|
update benchmark numbers
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-04-02 19:44:33 +04:00 |
|
Anjan Roy
|
2f0446175b
|
compute iterations per unit time when benchmarking
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-04-02 19:35:30 +04:00 |
|
Anjan Roy
|
f4f7a36846
|
Merge pull request #30 from itzmeanjan/update-sha3
Update `sha3` to Latest Commit
|
2023-04-02 19:15:02 +04:00 |
|
Anjan Roy
|
3879ee1343
|
update sha3 to latest commit
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-04-02 19:12:26 +04:00 |
|
Anjan Roy
|
34c6a4bc56
|
Merge pull request #29 from itzmeanjan/add-mont-arith
Montgomery Arithmetic over Zq | q = 3329
|
2023-03-10 11:24:14 +04:00 |
|
Anjan Roy
|
349e4f6e87
|
update benchmark results
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-10 11:22:15 +04:00 |
|
Anjan Roy
|
720ed9d2d5
|
update how to compile example showing usage of Kyber KEM API
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 18:57:28 +04:00 |
|
Anjan Roy
|
48b2d1b882
|
update tests ensuring functional correctness of Kyber and its components
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 18:53:45 +04:00 |
|
Anjan Roy
|
5e54d6f615
|
correct modulo addition and negation over Zq implementation
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 18:53:22 +04:00 |
|
Anjan Roy
|
645772f0bc
|
update kyber PKE
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 16:19:07 +04:00 |
|
Anjan Roy
|
15e423ceb5
|
update sampling of polynomoial vector/ matrix
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 16:16:37 +04:00 |
|
Anjan Roy
|
31233bcf29
|
update arithmetic with vectors of polynomials
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 16:07:26 +04:00 |
|
Anjan Roy
|
38f0f1839d
|
polynomial coefficient compression and decompression
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 16:04:58 +04:00 |
|
Anjan Roy
|
8d29f90be0
|
update deserialization of bytearray to polynomial
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 15:54:51 +04:00 |
|
Anjan Roy
|
eec43d830b
|
update serialization of polynomial to bytearrays
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 15:39:22 +04:00 |
|
Anjan Roy
|
191f0a7ceb
|
remove unnecessary import
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 12:06:44 +04:00 |
|
Anjan Roy
|
1cf427220c
|
start using new type Zq in NTT implementation header
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 12:03:50 +04:00 |
|
Anjan Roy
|
ea713c2fcf
|
define compound modulo addition, subtraction and multiplication operators for Zq type
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 12:02:12 +04:00 |
|
Anjan Roy
|
be7b613b0b
|
compile-time compute powers of ζ for (i)NTT
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-09 11:49:19 +04:00 |
|
Anjan Roy
|
c5c0ef29a6
|
use proper constructors
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-06 20:20:42 +04:00 |
|
Anjan Roy
|
dd510c89d9
|
update public interfaces of Zq_t type
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-06 19:56:07 +04:00 |
|
Anjan Roy
|
b23095abbd
|
test functional correctness of Zq arithmetic operations
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-06 19:26:48 +04:00 |
|
Anjan Roy
|
ce909373ee
|
constant-time montgomery multiplication (with modulo reduction)
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-06 19:24:41 +04:00 |
|
Anjan Roy
|
afe84540a3
|
update how random Zq elements are sampled
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-03 19:05:14 +04:00 |
|
Anjan Roy
|
7dfa8ec170
|
when converting to canonical form make sure that they ∈ [0..3329)
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-03 18:40:15 +04:00 |
|
Anjan Roy
|
1f894ac8bf
|
compare two Zq elements
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-03 18:35:44 +04:00 |
|
Anjan Roy
|
48d91bf575
|
make functions ( defined in header file ) inline
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-03 18:17:52 +04:00 |
|
Anjan Roy
|
dac0ee5ebf
|
test (existing) prime field arithmetic with more random data
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-03 18:16:06 +04:00 |
|
Anjan Roy
|
f700f03f54
|
generate random Zq element ( mostly useful for testing )
Signed-off-by: Anjan Roy <hello@itzmeanjan.in>
|
2023-03-03 18:12:21 +04:00 |
|