LUOV Ward Beullens, Bart Preneel, Alan Szepieniec, Frederik - - PowerPoint PPT Presentation

luov
SMART_READER_LITE
LIVE PREVIEW

LUOV Ward Beullens, Bart Preneel, Alan Szepieniec, Frederik - - PowerPoint PPT Presentation

LUOV Ward Beullens, Bart Preneel, Alan Szepieniec, Frederik Vercauteren 1 / 10 Overview Introduction 1 2 Modifications Some numbers 3 Conclusion 4 2 / 10 Goal of LUOV is to reduce the key sizes. (while preserving the good properties of UOV)


slide-1
SLIDE 1

LUOV

Ward Beullens, Bart Preneel, Alan Szepieniec, Frederik Vercauteren

1 / 10

slide-2
SLIDE 2

Overview

1 2 3 4

Introduction Modifications Some numbers Conclusion

2 / 10

slide-3
SLIDE 3

Goal of LUOV is to reduce the key sizes.

(while preserving the good properties of UOV)

  • Generate SK from seed
  • Generate most of PK from seed [Petzoldt]
  • Field lifting

=

What is LUOV? (baby don’t hurt me)

Unbalanced Oil and Vinegar (UOV) [Patarin 1997]

  • Quadratic trapdoor function: P : Fn

q → Fm q with n > m.

  • Trapdoor is a factorization of P

F ◦ T , where T is linear and F linear in the last m variables (oil variables).

  • Well understood signature scheme, fast, small signatures, but

large keys. Used as building block for other MQ schemes (e.g. Rainbow).

3 / 10

slide-4
SLIDE 4
  • Generate SK from seed
  • Generate most of PK from seed [Petzoldt]
  • Field lifting

=

What is LUOV? (baby don’t hurt me)

Unbalanced Oil and Vinegar (UOV) [Patarin 1997]

  • Quadratic trapdoor function: P : Fn

q → Fm q with n > m.

  • Trapdoor is a factorization of P

F ◦ T , where T is linear and F linear in the last m variables (oil variables).

  • Well understood signature scheme, fast, small signatures, but

large keys. Used as building block for other MQ schemes (e.g. Rainbow).

Goal of LUOV is to reduce the key sizes.

(while preserving the good properties of UOV)

3 / 10

slide-5
SLIDE 5

=

What is LUOV? (baby don’t hurt me)

Unbalanced Oil and Vinegar (UOV) [Patarin 1997]

  • Quadratic trapdoor function: P : Fn

q → Fm q with n > m.

  • Trapdoor is a factorization of P

F ◦ T , where T is linear and F linear in the last m variables (oil variables).

  • Well understood signature scheme, fast, small signatures, but

large keys. Used as building block for other MQ schemes (e.g. Rainbow).

Goal of LUOV is to reduce the key sizes.

(while preserving the good properties of UOV)

  • Generate SK from seed
  • Generate most of PK from seed [Petzoldt]
  • Field lifting

3 / 10

slide-6
SLIDE 6

Field Lifting Assumption:

Solving a random system P(x) = y over F2r is as hard as solving a random system P(x) = y, where P is defined over F2, when r is prime. = · · · = · · · = · · ·

Field lifting

Given a UOV key pair (P, T ) over F2, we can use it as a key pair

  • ver F2r .

2

+ α30 x

1 + x1x2 + x3 + x1x4 + x4x5 + x5

1 + α2 +

2 2

+ α31 x2x3 + x

3 + x2x6 + x3x4 + x3x5 + x

1 + α +

6

+ α31 x1x2 + x2x3 + x3x4 + x2 + x5x6 α + α5 + | {z } | {z }

P(x) H(M)

4 / 10

slide-7
SLIDE 7

when r is prime. = · · · = · · · = · · · = =

Field lifting

Given a UOV key pair (P, T ) over F2, we can use it as a key pair

  • ver F2r .

2

+ α30 x

1 + x1x2 + x3 + x1x4 + x4x5 + x5

1 + α2 +

2 2

+ α31 x2x3 + x

3 + x2x6 + x3x4 + x3x5 + x

1 + α +

6

+ α31 x1x2 + x2x3 + x3x4 + x2 + x5x6 α + α5 + | {z } | {z }

P(x) H(M)

Field Lifting Assumption:

Solving a random system P(x) y over F2r is as hard as solving a random system P(x) y, where P is defined over F2,

4 / 10

slide-8
SLIDE 8

= · · · = · · · = · · · = =

Field lifting

Given a UOV key pair (P, T ) over F2, we can use it as a key pair

  • ver F2r .

2

+ α30 x

1 + x1x2 + x3 + x1x4 + x4x5 + x5

1 + α2 +

2 2

+ α31 x2x3 + x

3 + x2x6 + x3x4 + x3x5 + x

1 + α +

6

+ α31 x1x2 + x2x3 + x3x4 + x2 + x5x6 α + α5 + | {z } | {z }

P(x) H(M)

Field Lifting Assumption:

Solving a random system P(x) y over F2r is as hard as solving a random system P(x) y, where P is defined over F2, when r is prime.

4 / 10

slide-9
SLIDE 9

Subfield differential attack (Ding et al. 2019): Pick random x0 and solve P(x0 + x0) = y for x0 in a subfield. Claimed complexity of the attack: Parameters Security lvl Subfield Complexity LUOV-8-58-237 2 F22 ⊂ F28 2107 LUOV-48-43-222 2 F28 ⊂ F248 2135 Solution: Choose F2r , with r prime, such that there are no subfields to exploit. ⇒ No performance penalty. We study some generalization of the attack in revised LUOV submission document. =

Attacks

  • Key recovery attacks

Studied since 1997

  • Forgery attacks: Solve P(x)

y for x.

5 / 10

slide-10
SLIDE 10

Claimed complexity of the attack: Parameters Security lvl Subfield Complexity LUOV-8-58-237 2 F22 ⊂ F28 2107 LUOV-48-43-222 2 F28 ⊂ F248 2135 Solution: Choose F2r , with r prime, such that there are no subfields to exploit. ⇒ No performance penalty. We study some generalization of the attack in revised LUOV submission document. = =

Attacks

  • Key recovery attacks

Studied since 1997

  • Forgery attacks: Solve P(x)

y for x. Subfield differential attack (Ding et al. 2019): Pick random x0 and solve P(x0 + x0) y for x0 in a subfield.

5 / 10

slide-11
SLIDE 11

Solution: Choose F2r , with r prime, such that there are no subfields to exploit. ⇒ No performance penalty. We study some generalization of the attack in revised LUOV submission document. = =

Attacks

  • Key recovery attacks

Studied since 1997

  • Forgery attacks: Solve P(x)

y for x. Subfield differential attack (Ding et al. 2019): Pick random x0 and solve P(x0 + x0) y for x0 in a subfield. Claimed complexity of the attack: Parameters Security lvl Subfield Complexity 2107 LUOV-8-58-237 2 F22 ⊂ F28 2135 LUOV-48-43-222 2 F28 ⊂ F248

5 / 10

slide-12
SLIDE 12

We study some generalization of the attack in revised LUOV submission document. = =

Attacks

  • Key recovery attacks

Studied since 1997

  • Forgery attacks: Solve P(x)

y for x. Subfield differential attack (Ding et al. 2019): Pick random x0 and solve P(x0 + x0) y for x0 in a subfield. Claimed complexity of the attack: Parameters Security lvl Subfield Complexity 2107 LUOV-8-58-237 2 F22 ⊂ F28 2135 LUOV-48-43-222 2 F28 ⊂ F248 Solution: Choose F2r , with r prime, such that there are no subfields to exploit. ⇒ No performance penalty.

5 / 10

slide-13
SLIDE 13

= =

Attacks

  • Key recovery attacks

Studied since 1997

  • Forgery attacks: Solve P(x)

y for x. Subfield differential attack (Ding et al. 2019): Pick random x0 and solve P(x0 + x0) y for x0 in a subfield. Claimed complexity of the attack: Parameters Security lvl Subfield Complexity 2107 LUOV-8-58-237 2 F22 ⊂ F28 2135 LUOV-48-43-222 2 F28 ⊂ F248 Solution: Choose F2r , with r prime, such that there are no subfields to exploit. ⇒ No performance penalty. We study some generalization of the attack in revised LUOV submission document.

5 / 10

slide-14
SLIDE 14
  • Add salt to message before signing

⇒ Improved security against fault injection attacks and side-channel attacks.

  • Break up PRNG calls into multiple smaller calls.

⇒ Speed up by parallelization, lower memory usage.

  • Constant time AVX2 optimized implementation.
  • Add option to use Chacha8 instead of SHAKE to expand

public randomness. ⇒ ×2.5 and ×5.2 faster signing and verification respectively (SL1).

Round 2 improvements

  • Take smaller parameters ⇒ more efficient

6 / 10

slide-15
SLIDE 15
  • Break up PRNG calls into multiple smaller calls.

⇒ Speed up by parallelization, lower memory usage.

  • Constant time AVX2 optimized implementation.
  • Add option to use Chacha8 instead of SHAKE to expand

public randomness. ⇒ ×2.5 and ×5.2 faster signing and verification respectively (SL1).

Round 2 improvements

  • Take smaller parameters ⇒ more efficient
  • Add salt to message before signing

⇒ Improved security against fault injection attacks and side-channel attacks.

6 / 10

slide-16
SLIDE 16
  • Constant time AVX2 optimized implementation.
  • Add option to use Chacha8 instead of SHAKE to expand

public randomness. ⇒ ×2.5 and ×5.2 faster signing and verification respectively (SL1).

Round 2 improvements

  • Take smaller parameters ⇒ more efficient
  • Add salt to message before signing

⇒ Improved security against fault injection attacks and side-channel attacks.

  • Break up PRNG calls into multiple smaller calls.

⇒ Speed up by parallelization, lower memory usage.

6 / 10

slide-17
SLIDE 17
  • Add option to use Chacha8 instead of SHAKE to expand

public randomness. ⇒ ×2.5 and ×5.2 faster signing and verification respectively (SL1).

Round 2 improvements

  • Take smaller parameters ⇒ more efficient
  • Add salt to message before signing

⇒ Improved security against fault injection attacks and side-channel attacks.

  • Break up PRNG calls into multiple smaller calls.

⇒ Speed up by parallelization, lower memory usage.

  • Constant time AVX2 optimized implementation.

6 / 10

slide-18
SLIDE 18

Round 2 improvements

  • Take smaller parameters ⇒ more efficient
  • Add salt to message before signing

⇒ Improved security against fault injection attacks and side-channel attacks.

  • Break up PRNG calls into multiple smaller calls.

⇒ Speed up by parallelization, lower memory usage.

  • Constant time AVX2 optimized implementation.
  • Add option to use Chacha8 instead of SHAKE to expand

public randomness. ⇒ ×2.5 and ×5.2 faster signing and verification respectively (SL1).

6 / 10

slide-19
SLIDE 19

Updated submission package will be online next week.

Round 2.1 modifications

  • Choose field extension of prime degree.

Original F28 F248 F264 F280 New F27 F247 F261 F279

  • Aim for security level 1,3,5 instead of 2,4,5.

⇒ Smaller keys and signatures and better performance.

7 / 10

slide-20
SLIDE 20

Round 2.1 modifications

  • Choose field extension of prime degree.

Original F28 F248 F264 F280 New F27 F247 F261 F279

  • Aim for security level 1,3,5 instead of 2,4,5.

⇒ Smaller keys and signatures and better performance. Updated submission package will be online next week.

7 / 10

slide-21
SLIDE 21

Performance of AVX2 constant-time implementation (SL I): keygen sign verify PRG (cycles) (cycles) (cycles) Standard LUOV Keccak 1.9 M 1.4 M 1.0 M Chacha8 1.1M 515 K 197 K Precompute Keys1 ? 300 K 90 K Finish signature 2 ? 11 K

Some numbers

Key and signature sizes for SL1: LUOV-7-57-197 |sig| 239 B ∆ −23% |pk| 11.5 KB ∆ −5% |sk| 32B LUOV-47-42-182 1332 B −17% 4.7 KB −6% 32B

1Requires 250 KB to store expanded PK or SK 2Requires 23 KB to store partial signature 8 / 10

slide-22
SLIDE 22

Some numbers

Key and signature sizes for SL1: |sig| ∆ |pk| ∆ |sk| LUOV-7-57-197 239 B −23% 11.5 KB −5% 32B LUOV-47-42-182 1332 B −17% 4.7 KB −6% 32B Performance of AVX2 constant-time implementation (SL I): Standard LUOV Precompute Keys1 Finish signature 2 PRG Keccak Chacha8 ? ? keygen sign verify (cycles) (cycles) (cycles) 1.9 M 1.4 M 1.0 M 1.1M 515 K 197 K 300 K 90 K 11 K

1Requires 250 KB to store expanded PK or SK 2Requires 23 KB to store partial signature 8 / 10

slide-23
SLIDE 23

Conclusion (part 1) Disadvantages:

  • Public key size (11.5 KB)
  • Relatively new LUOV

assumption

Advantages:

  • Small signatures (239 B)
  • Small private key (32 B)
  • Solid foundation (UOV)
  • Simple arithmetic (F27 )
  • Low latency signing

(11K cycles)

  • No patent claims

9 / 10

slide-24
SLIDE 24

Questions?

  • Conclusion (part 2)

“All you need is LUOV”

John Lennon

10 / 10

slide-25
SLIDE 25
  • Conclusion (part 2)

“All you need is LUOV”

John Lennon

Questions?

10 / 10