Round 2
SABER: Module-LWR based KEM
- J. P. D’Anvers
- A. Karmakar
- S. S. Roy
- F. Vercauteren
SABER: Module-LWR based KEM Round 2 J. P. DAnvers A. Karmakar S. - - PowerPoint PPT Presentation
SABER: Module-LWR based KEM Round 2 J. P. DAnvers A. Karmakar S. S. Roy F. Vercauteren KU Leuven August 22, 2019 0 Outline 1 Introduction 2 Round 2 changes 3 Implementations 4 Conclusion 1 SABER 1 Outline 1 Introduction 2 Round 2
1 SABER
2 SABER
q
q
q
2m
q(v′ − v)⌉
3 SABER
◮ Module:
4 SABER
q
q
q
2m
q(v′ − v)⌉
5 SABER
◮ Module:
◮ Learning with Rounding
6 SABER
q
q
qA
q
qA
p b
2 m⌉
q(v′ − p T v)⌉
7 SABER
◮ Module:
◮ Learning with Rounding
◮ power-of-two
8 SABER
q
q
p)
q
p)
2m) ≫ log2( p T )
p(v′ − p T v)⌉
9 SABER
◮ binomial secret distribution
10 SABER
◮ binomial secret distribution
◮ No error correcting code
10 SABER
◮ Rq = Zq[X]/(X256 + 1) with q = 213 ◮ public key / ciphertext in Rp and RT with p = 210 and T = 24 ◮ Centered binomial distribution with 8 coins ([−4, 4]) 11 SABER
◮ Rq = Zq[X]/(X256 + 1) with q = 213 ◮ public key / ciphertext in Rp and RT with p = 210 and T = 24 ◮ Centered binomial distribution with 8 coins ([−4, 4]) ◮ IND-CCA secure KEM version using FO-transformation 11 SABER
◮ Rq = Zq[X]/(X256 + 1) with q = 213 ◮ public key / ciphertext in Rp and RT with p = 210 and T = 24 ◮ Centered binomial distribution with 8 coins ([−4, 4]) ◮ IND-CCA secure KEM version using FO-transformation ◮ Public Key: 992 Bytes ◮ Ciphertext: 1088 Bytes ◮ Failure probability: 2−136 ◮ Security: 185 bits 11 SABER
12 SABER
13 SABER
◮ Generation of matrix A
14 SABER
◮ Generation of matrix A
14 SABER
◮ software
15 SABER
◮ software
◮ hardware
15 SABER
◮ Generation of matrix A
16 SABER
◮ Generation of matrix A
◮ Rounding = add constant + chopping ◮ one of the constants changed for security proof 16 SABER
◮ Generation of matrix A
◮ Rounding = add constant + chopping ◮ one of the constants changed for security proof ◮ (Debated) smaller secret variance ◮ e.g. trinary binomial distribution ◮ would reduce public key and ciphertext size with ±10% ◮ too aggressive 16 SABER
17 SABER
◮ Haswell AVX2 (KU Leuven, Belgium [DKRV18])
18 SABER
◮ Haswell AVX2 (KU Leuven, Belgium [DKRV18])
◮ ARM Cortex-M (KU Leuven, Belgium [KMRV18])
18 SABER
◮ High-speed HW (University of Birmingham, UK)
19 SABER
◮ High-speed HW (University of Birmingham, UK)
◮ Lightweight HW/SW codesign (KU Leuven, Belgium)
19 SABER
◮ High-speed HW (University of Birmingham, UK)
◮ Lightweight HW/SW codesign (KU Leuven, Belgium)
◮ High-speed HW/SW codesign (George Mason University, USA /
19 SABER
◮ ASIC implementation (Tsinghua University, China)
20 SABER
◮ First order masking can be achieved by arithmetic masking in
◮ Saber uses power-of-two modulus ◮ Thus masking methods can be combined by Debraize’s arithmetic
◮ Time with masking roughly doubles. 21 SABER
22 SABER
◮ Flexible 23 SABER
◮ Flexible ◮ Simple 23 SABER
◮ Flexible ◮ Simple ◮ Efficient 23 SABER
◮ Flexible ◮ Simple ◮ Efficient ◮ More work in the pipeline 23 SABER
24 SABER
25 SABER
26 SABER