The Summation-Truncation Hybrid: Reusing Discarded Bits for Free - - PowerPoint PPT Presentation

the summation truncation hybrid reusing discarded bits
SMART_READER_LITE
LIVE PREVIEW

The Summation-Truncation Hybrid: Reusing Discarded Bits for Free - - PowerPoint PPT Presentation

The Summation-Truncation Hybrid: Reusing Discarded Bits for Free Aldo Gunsing and Bart Mennink Crypto 2020 1 / 14 PRP vs. PRF Many symmetric cryptographic schemes are based on pseudorandom permutations (PRPs) like AES 2 / 14 PRP vs. PRF


slide-1
SLIDE 1

The Summation-Truncation Hybrid: Reusing Discarded Bits for Free

Aldo Gunsing and Bart Mennink Crypto 2020

1 / 14

slide-2
SLIDE 2

PRP vs. PRF

◮ Many symmetric cryptographic schemes are based on pseudorandom permutations (PRPs) like AES

2 / 14

slide-3
SLIDE 3

PRP vs. PRF

◮ Many symmetric cryptographic schemes are based on pseudorandom permutations (PRPs) like AES ◮ A lot of modes only use the forward direction, not making use of the invertibility

2 / 14

slide-4
SLIDE 4

PRP vs. PRF

◮ Many symmetric cryptographic schemes are based on pseudorandom permutations (PRPs) like AES ◮ A lot of modes only use the forward direction, not making use of the invertibility ◮ In this case using a pseudorandom function (PRF) is often more secure

2 / 14

slide-5
SLIDE 5

PRP vs. PRF

◮ Many symmetric cryptographic schemes are based on pseudorandom permutations (PRPs) like AES ◮ A lot of modes only use the forward direction, not making use of the invertibility ◮ In this case using a pseudorandom function (PRF) is often more secure ◮ Prominent example: CTR mode P P P 1 2 x0 x1 x2 y0 y1 y2 F F F 1 2 x0 x1 x2 y0 y1 y2 n/2-bit security n-bit-security

2 / 14

slide-6
SLIDE 6

PRP-to-PRF Conversion

◮ We could design a dedicated PRF ◮ However, we have little understanding in how to design one

3 / 14

slide-7
SLIDE 7

PRP-to-PRF Conversion

◮ We could design a dedicated PRF ◮ However, we have little understanding in how to design one ◮ Alternatively, we can design a PRP-to-PRF conversion

3 / 14

slide-8
SLIDE 8

PRP-to-PRF Conversion

◮ We could design a dedicated PRF ◮ However, we have little understanding in how to design one ◮ Alternatively, we can design a PRP-to-PRF conversion

◮ PRP-PRF switch: PRP behaves like a PRF up to the birthday bound

3 / 14

slide-9
SLIDE 9

PRP-to-PRF Conversion

◮ We could design a dedicated PRF ◮ However, we have little understanding in how to design one ◮ Alternatively, we can design a PRP-to-PRF conversion

◮ PRP-PRF switch: PRP behaves like a PRF up to the birthday bound ◮ Conversions like summation and truncation achieve beyond birthday bound security

3 / 14

slide-10
SLIDE 10

Summation and Truncation

P P y x0 x1

4 / 14

slide-11
SLIDE 11

Summation and Truncation

P P y x0 x1 ◮ Sums two consecutive calls

4 / 14

slide-12
SLIDE 12

Summation and Truncation

P P y x0 x1 ◮ Sums two consecutive calls ◮ n-bit security

4 / 14

slide-13
SLIDE 13

Summation and Truncation

P P y x0 x1 P y x

n a n − a

◮ Sums two consecutive calls ◮ n-bit security

4 / 14

slide-14
SLIDE 14

Summation and Truncation

P P y x0 x1 P y x

n a n − a

◮ Sums two consecutive calls ◮ n-bit security ◮ Truncates a call to the first a bits

4 / 14

slide-15
SLIDE 15

Summation and Truncation

P P y x0 x1 P y x

n a n − a

◮ Sums two consecutive calls ◮ n-bit security ◮ Truncates a call to the first a bits ◮ Discards the other n − a bits

4 / 14

slide-16
SLIDE 16

Summation and Truncation

P P y x0 x1 P y x

n a n − a

◮ Sums two consecutive calls ◮ n-bit security ◮ Truncates a call to the first a bits ◮ Discards the other n − a bits ◮ Used in the key derivation function of GCM-SIV

4 / 14

slide-17
SLIDE 17

Summation and Truncation

P P y x0 x1 P y x

n a n − a

◮ Sums two consecutive calls ◮ n-bit security ◮ Truncates a call to the first a bits ◮ Discards the other n − a bits ◮ Used in the key derivation function of GCM-SIV ◮ n − a/2-bit security

4 / 14

slide-18
SLIDE 18

Summation-Truncation Hybrid

◮ Instead of discarding bits, we can reuse them by applying summation

5 / 14

slide-19
SLIDE 19

Summation-Truncation Hybrid

P P u v w x0 x1

n a n − a n a n − a

◮ Instead of discarding bits, we can reuse them by applying summation ◮ This leads to the Summation-Truncation Hybrid (STH)

5 / 14

slide-20
SLIDE 20

Summation-Truncation Hybrid

P P u v w x0 x1

n a n − a n a n − a

◮ Instead of discarding bits, we can reuse them by applying summation ◮ This leads to the Summation-Truncation Hybrid (STH) ◮ Outputs n − a extra bits compared to truncation

5 / 14

slide-21
SLIDE 21

Summation-Truncation Hybrid

P P u v w x0 x1

n a n − a n a n − a

◮ Instead of discarding bits, we can reuse them by applying summation ◮ This leads to the Summation-Truncation Hybrid (STH) ◮ Outputs n − a extra bits compared to truncation ◮ But we show that it has equal security!

5 / 14

slide-22
SLIDE 22

Summation-Truncation Hybrid

P P u v w x0 x1

n a n − a n a n − a

◮ Instead of discarding bits, we can reuse them by applying summation ◮ This leads to the Summation-Truncation Hybrid (STH) ◮ Outputs n − a extra bits compared to truncation ◮ But we show that it has equal security! ◮ Identical to summation when a = 0

5 / 14

slide-23
SLIDE 23

Proof Sketch: Idea

P

$

← − Perm[n] P P u v w 1

6 / 14

slide-24
SLIDE 24

Proof Sketch: Idea

P

$

← − Perm[n] P P u v w 1 ◮ Try to separate the truncation and summation parts

6 / 14

slide-25
SLIDE 25

Proof Sketch: Separating STH

P

$

← − Perm[n] P P u v 1 P P w 1 u v

7 / 14

slide-26
SLIDE 26

Proof Sketch: Separating STH

P

$

← − Perm[n] P P u v 1 P P w 1 u v ◮ Just write the two parts separately

7 / 14

slide-27
SLIDE 27

Proof Sketch: Separating STH

P

$

← − Perm[n] P P u v 1 P P w 1 u v ◮ Just write the two parts separately ◮ Problem: there is a shared secret P

7 / 14

slide-28
SLIDE 28

Proof Sketch: Permutation-Separated STH

P

$

← − Perm[n] P P u v 1 P′

$

← − P′ P′ w 1 u v

8 / 14

slide-29
SLIDE 29

Proof Sketch: Permutation-Separated STH

P

$

← − Perm[n] P P u v 1 P′

$

← − P′ P′ w 1 u v ◮ We re-choose the permutation, but keep the same distribution

8 / 14

slide-30
SLIDE 30

Proof Sketch: Permutation-Separated STH

P

$

← − Perm[n] P P u v 1 P′

$

← − Permcomp(u, v) P′ P′ w 1 u v ◮ We re-choose the permutation, but keep the same distribution ◮ Permcomp(u, v) is the set of all permutations that give (u, v) as truncation output

8 / 14

slide-31
SLIDE 31

Proof Sketch: Permutation-Separated STH

P

$

← − Perm[n] P P u v 1 P′

$

← − Permcomp(u, v) P′ P′ w 1 u v ◮ We re-choose the permutation, but keep the same distribution ◮ Permcomp(u, v) is the set of all permutations that give (u, v) as truncation output ◮ No shared secret, as u and v are public!

8 / 14

slide-32
SLIDE 32

Proof Sketch: Isolating Truncation

P

$

← − Perm[n] P P u v 1 P′

$

← − Permcomp(u, v) P′ P′ w 1 u v

9 / 14

slide-33
SLIDE 33

Proof Sketch: Isolating Truncation

P

$

← − Perm[n] P P u v 1 u

$

← − {0, 1}a v

$

← − {0, 1}a P′

$

← − Permcomp(u, v) P′ P′ w 1 u v ◮ Replace the truncation by a random function

9 / 14

slide-34
SLIDE 34

Proof Sketch: Isolating Truncation

P

$

← − Perm[n] P P u v 1 u

$

← − {0, 1}a v

$

← − {0, 1}a P′

$

← − Permcomp(u, v) P′ P′ w 1 u v ◮ Replace the truncation by a random function ◮ Permcomp(u, v) still well-defined, although u and v are generated differently

9 / 14

slide-35
SLIDE 35

Proof Sketch: Summation Modifications

P′

$

← − Permcomp(u, v) P′ P′ 1 U V u v w = U ⊕ V

10 / 14

slide-36
SLIDE 36

Proof Sketch: Summation Modifications

◮ Modified summation with subvalues U and V P′

$

← − Permcomp(u, v) P′ P′ 1 U V u v w = U ⊕ V

10 / 14

slide-37
SLIDE 37

Proof Sketch: Summation Modifications

◮ Modified summation with subvalues U and V ◮ What are their distributions? P′

$

← − Permcomp(u, v) P′ P′ 1 U V u v w = U ⊕ V

10 / 14

slide-38
SLIDE 38

Proof Sketch: Summation Modifications

◮ Modified summation with subvalues U and V ◮ What are their distributions? ◮ U has a uniform distribution P′

$

← − Permcomp(u, v) P′ P′ 1 U V u v w = U ⊕ V

10 / 14

slide-39
SLIDE 39

Proof Sketch: Summation Modifications

◮ Modified summation with subvalues U and V ◮ What are their distributions? ◮ U has a uniform distribution ◮ For V it depends:

◮ If v = u, V is uniform from {0, 1}b ◮ If v = u, V is uniform from {0, 1}b \ {U}

P′

$

← − Permcomp(u, v) P′ P′ 1 U V u v w = U ⊕ V

10 / 14

slide-40
SLIDE 40

Proof Sketch: Alternative Description

Pk

$

← − Perm[b] Pu Pv 1 U V w = U ⊕ V

11 / 14

slide-41
SLIDE 41

Proof Sketch: Alternative Description

◮ We modify the construction to a family of permutations Pk

$

← − Perm[b] Pu Pv 1 U V w = U ⊕ V

11 / 14

slide-42
SLIDE 42

Proof Sketch: Alternative Description

◮ We modify the construction to a family of permutations ◮ We get the same distributions

  • f U and V

Pk

$

← − Perm[b] Pu Pv 1 U V w = U ⊕ V

11 / 14

slide-43
SLIDE 43

Proof Sketch: Alternative Description

◮ We modify the construction to a family of permutations ◮ We get the same distributions

  • f U and V

◮ U has a uniform distribution Pk

$

← − Perm[b] Pu Pv 1 U V w = U ⊕ V

11 / 14

slide-44
SLIDE 44

Proof Sketch: Alternative Description

◮ We modify the construction to a family of permutations ◮ We get the same distributions

  • f U and V

◮ U has a uniform distribution ◮ For V it depends:

◮ If v = u, V is uniform from {0, 1}b ◮ If v = u, V is uniform from {0, 1}b \ {U}

Pk

$

← − Perm[b] Pu Pv 1 U V w = U ⊕ V

11 / 14

slide-45
SLIDE 45

Proof Sketch: Generalized Summation

Pk

$

← − Perm[b] Pu Pv w 1

12 / 14

slide-46
SLIDE 46

Proof Sketch: Generalized Summation

◮ This construction is a generalization of summation Pk

$

← − Perm[b] Pu Pv w 1

12 / 14

slide-47
SLIDE 47

Proof Sketch: Generalized Summation

◮ This construction is a generalization of summation ◮ We modify the proof of summation to cover this variant Pk

$

← − Perm[b] Pu Pv w 1

12 / 14

slide-48
SLIDE 48

Proof Sketch: Generalized Summation

◮ This construction is a generalization of summation ◮ We modify the proof of summation to cover this variant ◮ Uses the χ2-technique Pk

$

← − Perm[b] Pu Pv w 1

12 / 14

slide-49
SLIDE 49

Comparison

1 2 3 4

n 2 2n 3 3n 4

n Rate Security level (in bits) Summation Truncation STH Rate Security level Construction (in/out) (in bits) Summation 2 n Truncation n/a n − a/2 STH 2n/(n + a) n − a/2

13 / 14

slide-50
SLIDE 50

Conclusion

◮ A lot of cryptographic constructions use PRFs

14 / 14

slide-51
SLIDE 51

Conclusion

◮ A lot of cryptographic constructions use PRFs ◮ Dedicated PRFs are not conventional, block ciphers are more commonly built

14 / 14

slide-52
SLIDE 52

Conclusion

◮ A lot of cryptographic constructions use PRFs ◮ Dedicated PRFs are not conventional, block ciphers are more commonly built ◮ An established PRP-to-PRF conversion is truncation

14 / 14

slide-53
SLIDE 53

Conclusion

◮ A lot of cryptographic constructions use PRFs ◮ Dedicated PRFs are not conventional, block ciphers are more commonly built ◮ An established PRP-to-PRF conversion is truncation ◮ However, it discards valuable PRP-output

14 / 14

slide-54
SLIDE 54

Conclusion

◮ A lot of cryptographic constructions use PRFs ◮ Dedicated PRFs are not conventional, block ciphers are more commonly built ◮ An established PRP-to-PRF conversion is truncation ◮ However, it discards valuable PRP-output ◮ We can reuse these bits without security loss with summation: STH

14 / 14

slide-55
SLIDE 55

Conclusion

◮ A lot of cryptographic constructions use PRFs ◮ Dedicated PRFs are not conventional, block ciphers are more commonly built ◮ An established PRP-to-PRF conversion is truncation ◮ However, it discards valuable PRP-output ◮ We can reuse these bits without security loss with summation: STH ◮ Might be interesting to expand to more permutation calls

14 / 14

slide-56
SLIDE 56

Conclusion

◮ A lot of cryptographic constructions use PRFs ◮ Dedicated PRFs are not conventional, block ciphers are more commonly built ◮ An established PRP-to-PRF conversion is truncation ◮ However, it discards valuable PRP-output ◮ We can reuse these bits without security loss with summation: STH ◮ Might be interesting to expand to more permutation calls

Thank you for your attention!

14 / 14