Authenticated Encryption
Atul Luykx
COSIC, ESAT, KU Leuven, Belgium
July 15, 2016
1
Authenticated Encryption Atul Luykx COSIC, ESAT, KU Leuven, Belgium - - PowerPoint PPT Presentation
Authenticated Encryption Atul Luykx COSIC, ESAT, KU Leuven, Belgium July 15, 2016 1 2 2 2 2 2 2 2 2 2 2 Modeling Attacks 3 Modeling Attacks 3 Modeling Attacks Encryption 3 Modeling Attacks Encryption 3 Modeling Attacks
COSIC, ESAT, KU Leuven, Belgium
1
2
2
2
2
2
2
2
2
2
2
3
3
3
3
3
3
3
4
4
4
5
5
5
6
6
6
1ECRYPT II 2012 key size recommendation
7
1ECRYPT II 2012 key size recommendation
7
1ECRYPT II 2012 key size recommendation
7
◮ Determines how long the data must be protected 1ECRYPT II 2012 key size recommendation
7
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force 1ECRYPT II 2012 key size recommendation
7
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations,
1ECRYPT II 2012 key size recommendation
7
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations,
◮ Guessing one key out of many is much easier 1ECRYPT II 2012 key size recommendation
7
8
8
8
8
9
+ + +
9
+ + +
+ + +
9
1
2
+ + +
1
2 9
1
2
+ + +
1
2
1 = IV1 ⊕ IV2 ⊕ Guess 9
1
2
+ + +
1
2
1 = IV1 ⊕ IV2 ⊕ Guess
9
10
10
10
11
11
12
12
12
12
12
13
13
13
14
14
14
14
15
15
15
15
16
16
16
16
16
17
17
17
17
17
17
17
17
17
K
18
K
18
19
19
19
20
20
?
20
?
20
?
20
?
20
21
21
?
21
?
22
22
23
23
+ + +
23
m1 EK c1
24
m1 EK c1 m2 m3 m4
+ + +
EK EK EK EK T
24
m1 EK c1 m2 m3 m4
+ + +
EK EK EK EK T N, M T
PRFK
T ′
?
= 1
24
m1 EK c1 m2 m3 m4
+ + +
EK EK EK EK T N, M T
PRFK
T ′
?
= 1
24
m1 EK c1 m2 m3 m4
+ + +
EK EK EK EK T N, M T
PRFK
T ′
?
= 1
24
+ + +
25
+ + +
2
3
4
+ + +
25
+ + +
2
3
4
+ + +
25
+ + +
2
3
4
+ + +
25
+ + +
2
3
4
+ + +
26
+ + +
2
3
4
+ + +
2)K 3 + (m3 + m′ 3)K 2 + (m4 + m′ 4)K = 0
26
+ + +
2
3
4
+ + +
2)K 3 + (m3 + m′ 3)K 2 + (m4 + m′ 4)K = 0
+
+
26
+ + +
2
3
4
+ + +
2)K 3 + (m3 + m′ 3)K 2 + (m4 + m′ 4)K = 0
+
+
26
m1 EK m2 m3 m4
+ + +
EK EK EK EK T
27
m1 EK m2 m3 m4
+ + +
EK EK EK EK T
27
m1 EK m2 m3 m4
+ + +
EK EK EK EK T
27
m1 EK m2 m3 m4
+ + +
EK EK EK EK T
27
m1 EK m2 m3 m4
+ + +
EK EK EK EK T
27
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations,
2ECRYPT II 2012 key size recommendation
28
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations,
2ECRYPT II 2012 key size recommendation
28
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations,
◮ Bounds how many messages can be processed 2ECRYPT II 2012 key size recommendation
28
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations,
◮ Bounds how many messages can be processed ◮ Properly designed mode: tag guessing 2ECRYPT II 2012 key size recommendation
28
◮ Determines how long the data must be protected ◮ Properly designed block cipher: brute force ◮ 80 bit key: long-term protection against small organizations,
◮ Bounds how many messages can be processed ◮ Properly designed mode: tag guessing ◮ 32 bit tag: about 4 billion messages can be verified 2ECRYPT II 2012 key size recommendation
28
29
29
29
29
29
29
+ + +
30
+ + +
30
+ + +
30
+ + +
30
+ + +
30
+ + +
30
+ + +
30
+ + +
1
2
3
4
+ + +
31
+ + +
1
2
3
4
+ + +
31
+ + +
1
2
3
4
+ + +
31
+ + +
4
+ + +
31
+ + +
1
2
3
4
+ + +
31
32
32
1 2 3 4 5 6 7 ·104 20 21 22 23 24 25 26 27 28 29 210 q2ℓ2 = 232 Number of queries — q Message Block Length — ℓ
33
34
m1 m2 m3 m4
+ + +
π π π π T m′
1
m′
2
m′
3
m′
4
+ + +
π π π π T
34
m1 m2 m3 m4
+ + +
π π π π T m′
1
m′
2
m′
3
m′
4
+ + +
π π π π T
34
m1 m2 m3 m4
+ + +
π π π π T m′
1
m′
2
m′
3
m′
4
+ + +
π π π π T
34
1 2 3 4 5 6 7 ·104 21 24 27 210 213 216 219 q2ℓ2 = 232 q2ℓ = 232 Number of queries — q Message Block Length — ℓ
35
36
36
36
36
36
36
36
37
37
37
37
37
37
1 2 3 4 5 6 7 ·104 21 25 29 213 217 221 225 q2ℓ2 = 232 q2ℓ = 232 Number of queries — q Message Block Length — ℓ
38
1 2 3 4 5 6 7 ·104 21 25 29 213 217 221 225 232q2 + q2ℓ2 = 264 q2ℓ2 = 232 q2ℓ = 232 Number of queries — q Message Block Length — ℓ
38
1 2 3 4 5 6 7 ·104 21 25 29 213 217 221 225 q2 = 232 232q2 + q2ℓ2 = 264 q2ℓ2 = 232 q2ℓ = 232 Number of queries — q Message Block Length — ℓ
38
39
39
39
39
40
40