- 1
ASIACRYPT 2018/12/04
On the Concrete Security of Goldreich’s Pseudorandom Generator
Geoffroy Couteau - Aurélien Dupin - Pierrick Méaux - Mélissa Rossi - Yann Rotella
- 1
On the Concrete Security of Goldreichs Pseudorandom Generator Geo ff - - PowerPoint PPT Presentation
On the Concrete Security of Goldreichs Pseudorandom Generator Geo ff roy Couteau - Aurlien Dupin - Pierrick Maux - Mlissa Rossi - Yann Rotella ASIACRYPT 2018/12/04 1 1 Goldreich Pseudorandom Generator (Goldreich TOCT 2000)
2
2
2
2
2
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
2
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
1, xσi 2, xσi 3, xσi 4, xσi 5)
2
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
1, xσi 2, xσi 3, xσi 4, xσi 5)
1 , xσm 2 , xσm 3 , xσm 4 , xσm 5 )
Public system
2
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
1, xσi 2, xσi 3, xσi 4, xσi 5)
1 , xσm 2 , xσm 3 , xσm 4 , xσm 5 )
Public system
2
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
1, xσi 2, xσi 3, xσi 4, xσi 5)
1 , xσm 2 , xσm 3 , xσm 4 , xσm 5 )
Public system
3
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
1, xσi 2, xσi 3, xσi 4, xσi 5)
1 , xσm 2 , xσm 3 , xσm 4 , xσm 5 )
Public system
Secret seed
Public output
3
1
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
1, xσi 2, xσi 3, xσi 4, xσi 5)
1 , xσm 2 , xσm 3 , xσm 4 , xσm 5 )
Public system
Secret seed
Public output
3
1 2
1, xσ1 2, xσ1 3, xσ1 4, xσ1 5)
1, xσi 2, xσi 3, xσi 4, xσi 5)
1 , xσm 2 , xσm 3 , xσm 4 , xσm 5 )
Public system
Secret seed
Public output
4
1, xσi 2, xσi 3, xσi 4, xσi 5) = xσi 1 + xσi 2 + xσi 3 + xσi 4xσi 5
Predicate P5
s > 1
4
1, xσi 2, xσi 3, xσi 4, xσi 5) = xσi 1 + xσi 2 + xσi 3 + xσi 4xσi 5
Predicate P5
s > 1
4
1, xσi 2, xσi 3, xσi 4, xσi 5) = xσi 1 + xσi 2 + xσi 3 + xσi 4xσi 5
Predicate P5
s > 1
One wayness broken
Inversion with Gaussian elimination
4
1, xσi 2, xσi 3, xσi 4, xσi 5) = xσi 1 + xσi 2 + xσi 3 + xσi 4xσi 5
Predicate P5
s > 1
No -linear distinguisher
One wayness broken
Inversion with Gaussian elimination
4
1, xσi 2, xσi 3, xσi 4, xσi 5) = xσi 1 + xσi 2 + xσi 3 + xσi 4xσi 5
Predicate P5
s > 1
No -linear distinguisher
One wayness broken
One wayness broken
Polytime inversion Inversion with Gaussian elimination
4
1, xσi 2, xσi 3, xσi 4, xσi 5) = xσi 1 + xσi 2 + xσi 3 + xσi 4xσi 5
Predicate P5
s > 1
No -linear distinguisher
One wayness broken
One wayness broken
Polytime inversion Inversion with Gaussian elimination
Sub-exponential inversion 2O(n1− s − 1
10 )
5
Goldreich Pseudorandom Generator
5
Ishai et al. STOC 2008 Applebaum et al. CRYPTO 2017
Goldreich Pseudorandom Generator
5
Ishai et al. STOC 2008 Applebaum et al. CRYPTO 2017
Sahai and Waters STOC 2014 Lin and Tessaro CRYPTO 2017
Goldreich Pseudorandom Generator
5
Ishai et al. STOC 2008 Applebaum et al. CRYPTO 2017
Sahai and Waters STOC 2014 Lin and Tessaro CRYPTO 2017
Albrecht et al. EUROCRYPT 2015 Canteaut et al. FSE 2016 Méaux et al. EUROCRYPT 2016 Grassi et al. ACM-CCS 2016
Goldreich Pseudorandom Generator
5
Ishai et al. STOC 2008 Applebaum et al. CRYPTO 2017
Sahai and Waters STOC 2014 Lin and Tessaro CRYPTO 2017
Albrecht et al. EUROCRYPT 2015 Canteaut et al. FSE 2016 Méaux et al. EUROCRYPT 2016 Grassi et al. ACM-CCS 2016
Boyle et al. ACM-CCS 2017
Goldreich Pseudorandom Generator
6
6
6
6
6
7
8
1
8
1
8
1
8
1
n 2) − 1
n 2) m
Average number of collisions
8
1
n 2) − 1
n 2) m
Average number of collisions
Average collisions
Stretch 1.3 1.35 1.4 1.45 1.5
9
2
9
2
9
2
9
2
Average number of necessary guesses
10
1
Idea introduced by Bettale PhD Thesis 2011
10
1 2
Idea introduced by Bettale PhD Thesis 2011
10
1 2 3
Idea introduced by Bettale PhD Thesis 2011
10
1 2 3
n2−s 2 )
Idea introduced by Bettale PhD Thesis 2011
Exponent for solving linear systems
11
1 2 8
i t s e c u r i t y Stretch 1,1 1,2 1,3 1,4 1,5 n 2^9 2^10 2^11 2^12 2^13 2^14 8
i t s e c u r i t y
11
1 2 8
i t s e c u r i t y Stretch 1,1 1,2 1,3 1,4 1,5 n 2^9 2^10 2^11 2^12 2^13 2^14 8
i t s e c u r i t y
12
13
1 + xσ1 2 + xσ1 3 + xσ1 4xσ1 5
1 + xσi 2 + xσi 3 + xσi 4xσi 5
1 + xσm 2 + xσm 3 + xσm 4 xσm 5
1 + xσ1 2 + xσ1 3 + xσ1 4xσ1 5
1 + xσi 2 + xσi 3 + xσi 4xσi 5
1 + xσm 2 + xσm 3 + xσm 4 xσm 5
Public system
1 14
x5(x3 + x9 + x2 + x1) = x5 x1(x3 + x9 + x2 + x5) = x1
Each equation can create 2 more equations
1 14
x6(x17 + x2 + x1 + x5x1)+x1(x7 + x1 + x11 + x6x5) = x6 + x1 x6(x17 + x2 + x1) + x1(x7 + x1 + x11) = x6 + x1
Degree-two equation
x5(x3 + x9 + x2 + x1) = x5 x1(x3 + x9 + x2 + x5) = x1
Each equation can create 2 more equations
1 14
S-polynomial
2
15
2
15
2
15
Using heuristic assumptions (counting equations, linear independence), we were able to define a function
such that*
*We thank Henri Gilbert and Guénaël Renault for helpful insights with this approach
Conjectured degree 2 linearization (experimentally checked for small n)
16
Stretch 1,1 1,2 1,3 1,4 1,5 n 2^7 2^8 2^9 2^10 2^11 2^12 2^13 2^14
16
Stretch 1,1 1,2 1,3 1,4 1,5 n 2^7 2^8 2^9 2^10 2^11 2^12 2^13 2^14
16
Stretch 1,1 1,2 1,3 1,4 1,5 n 2^7 2^8 2^9 2^10 2^11 2^12 2^13 2^14
17
128-bit security for the subexp attack
Stretch 1,1 1,2 1,3 1,4 1,5 n 2^9 2^10 2^11 2^12 2^13 2^14
80-bit security for the subexp attack C
j e c t u r e d P
y n
i a l a t t a c k
18
XorMaj predicate
18
XorMaj predicate
1− s − 1 ⌈ k 2 ⌉ + 1
19
Stretch 1,1 1,2 1,3 1,4 1,5 n 2^9 2^10 2^11 2^12 2^13 2^14
19
Stretch 1,1 1,2 1,3 1,4 1,5 n 2^9 2^10 2^11 2^12 2^13 2^14
19
20
20