Linear Cryptanalysis of MORUS Tomer Ashur, Maria Eichlseder, Martin - - PowerPoint PPT Presentation

linear cryptanalysis of morus
SMART_READER_LITE
LIVE PREVIEW

Linear Cryptanalysis of MORUS Tomer Ashur, Maria Eichlseder, Martin - - PowerPoint PPT Presentation

Linear Cryptanalysis of MORUS Tomer Ashur, Maria Eichlseder, Martin M. Lauridsen, Ga etan Leurent, Brice Minaud, Yann Rotella, Yu Sasaki, Beno t Viguier Asiacrypt, December 4, 2018 1 / 16 Paper collision Yanbin Li and Meiqin Wang.


slide-1
SLIDE 1

Linear Cryptanalysis of MORUS

Tomer Ashur, Maria Eichlseder, Martin M. Lauridsen, Ga¨ etan Leurent, Brice Minaud, Yann Rotella, Yu Sasaki, Benoˆ ıt Viguier Asiacrypt, December 4, 2018

1 / 16

slide-2
SLIDE 2
  • Paper collision

Yanbin Li and Meiqin Wang. “Cryptanalysis of MORUS”. Designs, Codes and Cryptography, pages 1—24, First Online: 09 June 2018 Our paper was submitted to ePrint on 17 May 2018. MILP-aided search for reduced MORUS. ◮ Integral distinguishers for 6.5 steps of MORUS-640. ◮ Differential distinguishers for 4.5 steps of MORUS-1280.

2 / 16

slide-3
SLIDE 3
  • Overview

  • MORUS design

  • Analysis of MiniMORUS

  • Application to MORUS

3 / 16

slide-4
SLIDE 4
  • MORUS design
slide-5
SLIDE 5

MORUS

◮ Family of authenticated ciphers by Wu and Huang

  • MORUS-640 with 128-bit key

S0 S1 S2 S3 S4 5 × 4 × 32-bit words

  • MORUS-1280-128 with 128-bit key
  • MORUS-1280-256 with 256-bit key

S0 S1 S2 S3 S4 5 × 4 × 64-bit words ◮ Security claim for confidentiality = key size; re-key every 264 blocks ◮ CAESAR finalist for Use-Case 2 (High Performance)

4 / 16

slide-6
SLIDE 6

MORUS Authenticated Cipher (simplified)

S0 S1 S2 S3 S4

  • StateUpdate
  • ut

in 1 Initialization: a S0 = N, S1 = K b 16 × StateUpdate (0) c S1 = S1 ⊕ K 2 Encryption: For each msg block Mi: a Ci = Mi ⊕ (S0, . . . , S3) b StateUpdate (Mi) 3 Finalization: a S4 = S4 ⊕ S0 b 10 × StateUpdate (len(M)) c T = (S0, . . . , S3)

5 / 16

slide-7
SLIDE 7

MORUS Authenticated Cipher (simplified)

S0 S1 S2 S3 S4

  • StateUpdate
  • ut

in 1 Initialization: a S0 = N, S1 = K b 16 × StateUpdate (0) c S1 = S1 ⊕ K 2 Encryption: For each msg block Mi: a Ci = Mi ⊕ (S0, . . . , S3) b StateUpdate (Mi) 3 Finalization: a S4 = S4 ⊕ S0 b 10 × StateUpdate (len(M)) c T = (S0, . . . , S3)

5 / 16

slide-8
SLIDE 8

MORUS StateUpdate Function

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M ≪3w ≪1w ≪2w ≪3w ≪2w ≪1w

S0 S1 S2 S3 S4 S0 S1 S2 S3 S4

◮ Nonlinearity: “Toffoli” gate z = z ⊕ (x ⊙ y) ◮ Diffusion: Xors z = z ⊕ x Rotation within words ≪r Rotate words ≪rw

6 / 16

slide-9
SLIDE 9

MiniMORUS StateUpdate Function

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

S0 S1 S2 S3 S4

◮ MORUS state S0 S1 S2 S3 S4 ○ ◮ MiniMORUS state S0 S1 S2 S3 S4 ◮ We will later use = + + + ◮ Rotational invariance

7 / 16

slide-10
SLIDE 10

Analysis of MiniMORUS

slide-11
SLIDE 11

Weight and Bias

x = u ⊕ y ⊕ (z ∧ t) Can be linear approximated with E: x = u ⊕ y and Pr(E) = 3

4

The bias ε is: Pr(E) = 1 2 + ε = ⇒ ε = 1 4 The correlation and weight of an approximation is: cor(E) := 2ε weight(E) := − log2 | cor(E)| = ⇒ weight(E) = 1 Pilling Up Lemma (Matsui M., 1993) The correlation (resp. weight) of an XOR of independent variables is equal to the product (resp. sum) of their individual correlations (resp. weights)

8 / 16

slide-12
SLIDE 12

MiniMORUS: Approximation fragments α, β, γ, δ, ε

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i + b0 weight(αt

i ) = 1 (not 2)

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i weight(βt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b1 weight(γt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b4 weight(δt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b2 weight(εt

i ) = 1

9 / 16

slide-13
SLIDE 13

MiniMORUS: Approximation fragments α, β, γ, δ, ε

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i + b0 weight(αt

i ) = 1 (not 2)

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i weight(βt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b1 weight(γt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b4 weight(δt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b2 weight(εt

i ) = 1

9 / 16

slide-14
SLIDE 14

MiniMORUS: Approximation fragments α, β, γ, δ, ε

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i + b0 weight(αt

i ) = 1 (not 2)

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i weight(βt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b1 weight(γt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b4 weight(δt

i ) = 1

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i + b2 weight(εt

i ) = 1

9 / 16

slide-15
SLIDE 15

Building Trails

10 / 16

slide-16
SLIDE 16

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-17
SLIDE 17

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-18
SLIDE 18

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-19
SLIDE 19

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-20
SLIDE 20

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-21
SLIDE 21

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-22
SLIDE 22

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-23
SLIDE 23

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-24
SLIDE 24

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-25
SLIDE 25

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-26
SLIDE 26

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-27
SLIDE 27

MiniMORUS-640: Building trails with χ1 and χ2

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: estimated weight 11 C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: estimated weight 13 C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

11 / 16

slide-28
SLIDE 28

MiniMORUS: Weight of βt

i ⊕ γt i

·

M C ≪b0

·

≪b1

·

≪b2

·

≪b3

·

≪b4

·

M M M M

i i i i + b1 = · ·

Weight of βt

i ⊕ γt i is 0 (not 2). 12 / 16

slide-29
SLIDE 29

MiniMORUS-640: Weight corrected

S0 S1 S2 S3 S4 C β0 27 α27 31 γ0 31 31 31 β31, 26 31 α26, 13 × δ0 13 12 13 γ13 13 13 13

,13

8 13

,8

12 12 12 β12 7 12 α7

χ1: weight 7 (not 11) C 0

27 ⊕ C 1 0 ⊕ C 1 8 ⊕ C 1 26 ⊕ C 2 7 ⊕ C 2 13 ⊕ C 2 31 ⊕ C 3 12 → S2 2,0

S0 S1 S2 S3 S4 C × 7 ε0 7 20 7 δ7 7 6 7 γ7 20 19 20 γ20 7 7 7 β7 6 6 6 β20,6 20 20 20 19 19 19 β19 2 7 α2 15 20 α15,1,27 1 6 27 14 19 α14

χ2: weight 9 (not 13) C 1

2 ⊕ C 2 1 ⊕ C 2 7 ⊕ C 2 15 ⊕ C 2 27 ⊕ C 3 6 ⊕ C 3 14 ⊕ C 3 20 ⊕ C 4 19 → S2 2,0

13 / 16

slide-30
SLIDE 30

MiniMORUS: Final Approximation

◮ MiniMORUS-640 χ1 ⊕χ2 = C 0

27 ⊕C 1 0 ⊕C 1 2 ⊕C 1 8 ⊕C 1 26 ⊕C 2 1 ⊕C 2 13 ⊕C 2 15 ⊕C 2 27 ⊕C 2 31 ⊕C 3 6 ⊕C 3 12 ⊕C 3 14 ⊕C 3 20 ⊕C 4 19 → 0

◮ MiniMORUS-1280 C 0

51⊕C 1 0 ⊕C 1 25⊕C 1 33⊕C 1 55⊕C 2 4 ⊕C 2 7 ⊕C 2 29⊕C 2 37⊕C 2 38⊕C 2 46⊕C 2 51⊕C 3 11⊕C 3 20⊕C 3 42⊕C 3 50⊕C 4 24 → 0

◮ Total weight of χ: 7 + 9 = 16. ◮ Experimentally verified

  • Analysis of the Algebraic Normal Form
  • Measurements on random inputs (slightly better than expected)

14 / 16

slide-31
SLIDE 31
  • Application to MORUS
slide-32
SLIDE 32

From MiniMORUS to MORUS

◮ = + + + Si,j in MiniMORUS = Si,j ⊕ Si,j+w ⊕ Si,j+2w ⊕ Si,j+3w in MORUS ◮ Weight ×4, except βi + γi has weight 0 in MiniMORUS but 3 in MORUS ○ MORUS-640: Weight 4 × 16 + 3 × 3 = 73 → data complexity ≈ 2146

  • ○ MORUS-1280: Weight 4 × 16 + 4 × 3 = 76 → data complexity ≈ 2152
  • ◮ trail is immune to bit-shift: actual data complexity is about a factor of 25 to 26 lower

15 / 16

slide-33
SLIDE 33

From MiniMORUS to MORUS

◮ = + + + Si,j in MiniMORUS = Si,j ⊕ Si,j+w ⊕ Si,j+2w ⊕ Si,j+3w in MORUS ◮ Weight ×4, except βi + γi has weight 0 in MiniMORUS but 3 in MORUS ○ MORUS-640: Weight 4 × 16 + 3 × 3 = 73 → data complexity ≈ 2146

  • ○ MORUS-1280: Weight 4 × 16 + 4 × 3 = 76 → data complexity ≈ 2152
  • ◮ trail is immune to bit-shift: actual data complexity is about a factor of 25 to 26 lower

15 / 16

slide-34
SLIDE 34

Impact for MORUS

◮ Keystream correlation

  • The bias is independent of Key or Nounce!
  • Known plaintext =

⇒ Distinguisher.

  • Multiple fixed plaintext =

⇒ plaintext recovery.

  • Similar to RC4, BEAST attack. . .

◮ Data complexity

  • Data limit 264... but correlation holds under rekeying.
  • Require 2141 blocks for MORUS-640
  • Require 2146 blocks for MORUS-1280 (violate 256-bit confidentiality claim)
  • Not practical ;-)

16 / 16

slide-35
SLIDE 35

Impact for MORUS

◮ Keystream correlation

  • The bias is independent of Key or Nounce!
  • Known plaintext =

⇒ Distinguisher.

  • Multiple fixed plaintext =

⇒ plaintext recovery.

  • Similar to RC4, BEAST attack. . .

◮ Data complexity

  • Data limit 264... but correlation holds under rekeying.
  • Require 2141 blocks for MORUS-640
  • Require 2146 blocks for MORUS-1280 (violate 256-bit confidentiality claim)
  • Not practical ;-)

16 / 16

slide-36
SLIDE 36

https://eprint.iacr.org/2018/464.pdf

16 / 16