Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Linearity within the SMS4 Block Cipher Muhammad Reza Z’aba Leonie Simpson Kenneth Wong Information Security Institute Queensland University of Technology, Australia

14 December 2009 – Inscrypt 2009

Ed Dawson

Introduction

Description of SMS4

Linearity

Cryptographic Significance

Outline

1

Introduction

2

Description of SMS4

3

Linearity

4

Cryptographic Significance

5

On the Branch Number of L0

6

Summary and Conclusion

On the Branch Number of L0

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Introduction

SMS4 Block cipher used in the Chinese Wireless LAN Wired Authentication and Privacy Infrastructure (WAPI) Extensively analyzed: integral, rectangle, impossible differential, boomerang, differential and linear attacks This Presentation The existence of simple linear relationships in components of SMS4

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Introduction

SMS4 Block cipher used in the Chinese Wireless LAN Wired Authentication and Privacy Infrastructure (WAPI) Extensively analyzed: integral, rectangle, impossible differential, boomerang, differential and linear attacks This Presentation The existence of simple linear relationships in components of SMS4

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Specification

SMS4 Structure: source-heavy unbalanced generic Feistel Plaintext block: P = (X0 , X1 , X2 , X3 ) (128 bits) Master key block: K = (MK0 , MK1 , MK2 , MK3 ) (128 bits) Thirty-two 32-bit round subkeys: K0 , K1 , . . . , K31 Number of rounds: 32 Ciphertext block: C = (X35 , X34 , X33 , X32 ) (128 bits)

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Specification

SMS4 Structure: source-heavy unbalanced generic Feistel Plaintext block: P = (X0 , X1 , X2 , X3 ) (128 bits) Master key block: K = (MK0 , MK1 , MK2 , MK3 ) (128 bits) Thirty-two 32-bit round subkeys: K0 , K1 , . . . , K31 Number of rounds: 32 Ciphertext block: C = (X35 , X34 , X33 , X32 ) (128 bits)

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Specification

SMS4 Structure: source-heavy unbalanced generic Feistel Plaintext block: P = (X0 , X1 , X2 , X3 ) (128 bits) Master key block: K = (MK0 , MK1 , MK2 , MK3 ) (128 bits) Thirty-two 32-bit round subkeys: K0 , K1 , . . . , K31 Number of rounds: 32 Ciphertext block: C = (X35 , X34 , X33 , X32 ) (128 bits)

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Encryption and Decryption Algorithms

Encryption

Decryption

X0

X1

X2

X3

X1

X2

X3

X4

X31

X32 K31

X33

X34

X32

X33

X34

X35

X35

X34

X33

X32

K0 T

T

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Encryption and Decryption Algorithms

Encryption

Decryption

X0

X1

X2

X3

X1

X2

X3

X4

X31

X32 K31

X33

X34

X32

X33

X34

X35

X35

X34

X33

X32

K0 T

T

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Encryption and Decryption Algorithms

Encryption

Decryption

X0

X1

X2

X3

X1

X2

X3

X4

X31

X32 K31

X33

X34

X32

X33

X34

X35

X35

X34

X33

X32

K0 T

T

Summary and Conclusion

Introduction

Description of SMS4

Linearity

On the Branch Number of L0

Cryptographic Significance

Summary and Conclusion

Encryption and Decryption Algorithms

Encryption

Decryption

X0

X1

X2

X3

X35

K0 T

X34 K31

X33

X32

X33

X32

X31

X3

X2

X1

T

X1

X2

X3

X4

X34

X31

X32 K31

X33

X34

X4 K0

T

T

X32

X33

X34

X35

X3

X2

X1

X0

X35

X34

X33

X32

X0

X1

X2

X3

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Encryption and Decryption Algorithms

Round Function Xi +4 = Xi ⊕ T (Xi +1 ⊕ Xi +2 ⊕ Xi +3 ⊕ Ki ), i = 0, 1, . . . , 31 T = L◦S

T is a 32-bit to 32-bit function S composed of four 8 × 8 bijective S-boxes s: S (Xi ) = (s(Xi ,0 ), s(Xi ,1 ), s(Xi ,2 ), s(Xi ,3 )). L consists of rotations L(Xi ) = Xi ⊕ (Xi ≪ 2) ⊕ (Xi ≪ 10) ⊕ (Xi ≪ 18) ⊕ (Xi ≪ 24).

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Encryption and Decryption Algorithms

Round Function Xi +4 = Xi ⊕ T (Xi +1 ⊕ Xi +2 ⊕ Xi +3 ⊕ Ki ), i = 0, 1, . . . , 31 T = L◦S

T is a 32-bit to 32-bit function S composed of four 8 × 8 bijective S-boxes s: S (Xi ) = (s(Xi ,0 ), s(Xi ,1 ), s(Xi ,2 ), s(Xi ,3 )). L consists of rotations L(Xi ) = Xi ⊕ (Xi ≪ 2) ⊕ (Xi ≪ 10) ⊕ (Xi ≪ 18) ⊕ (Xi ≪ 24).

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Key Scheduling Algorithm Key Schedule M K0

M K1 F K0

K−4

M K2 F K1

M K3 F K2

F K3

K−3 CK0

K−2

K−1

K−3

K−2

K−1

K0

K27

K28 CK31

K29

K30

K29

K30

K31

T′

T′

K28

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Key Scheduling Algorithm Key Schedule M K0

M K1 F K0

K−4

M K2 F K1

M K3 F K2

F K3

K−3 CK0

K−2

K−1

K−3

K−2

K−1

K0

K27

K28 CK31

K29

K30

K29

K30

K31

T′

T′

K28

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Key Scheduling Algorithm Key Schedule M K0

M K1 F K0

K−4

M K2 F K1

M K3 F K2

F K3

K−3 CK0

K−2

K−1

K−3

K−2

K−1

K0

K27

K28 CK31

K29

K30

K29

K30

K31

T′

T′

K28

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Key Scheduling Algorithm Key Schedule M K0

M K1 F K0

K−4

M K2 F K1

M K3 F K2

F K3

K−3 CK0

K−2

K−1

K−3

K−2

K−1

K0

K27

K28 CK31

K29

K30

K29

K30

K31

T′

T′

K28

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Key Scheduling Algorithm

Round Function Ki = Ki −4 ⊕ T 0 (Ki −3 ⊕ Ki −2 ⊕ Ki −1 ⊕ CKi ), i = 0, 1, . . . , 31 T 0 = L0 ◦ S

T 0 is a 32-bit to 32-bit function The same S as used in T : S (Xi ) = (s(Xi ,0 ), s(Xi ,1 ), s(Xi ,2 ), s(Xi ,3 )). L0 consists of rotations L0 (Xi ) = Xi ⊕ (Xi ≪ 13) ⊕ (Xi ≪ 23).

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Key Scheduling Algorithm

Round Function Ki = Ki −4 ⊕ T 0 (Ki −3 ⊕ Ki −2 ⊕ Ki −1 ⊕ CKi ), i = 0, 1, . . . , 31 T 0 = L0 ◦ S

T 0 is a 32-bit to 32-bit function The same S as used in T : S (Xi ) = (s(Xi ,0 ), s(Xi ,1 ), s(Xi ,2 ), s(Xi ,3 )). L0 consists of rotations L0 (Xi ) = Xi ⊕ (Xi ≪ 13) ⊕ (Xi ≪ 23).

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Simple Linear Relationships

Rotations Investigation of the existence of the following linear relationship F (Xi ) = Xi ≪ j

(1)

for particular rotation values j ∈ {0, 1, . . . , 31}. Fixed point is a special case when j = 0. The Set ΘF The set containing all distinct values that satisfy Equation 1

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Simple Linear Relationships

Rotations Investigation of the existence of the following linear relationship F (Xi ) = Xi ≪ j

(1)

for particular rotation values j ∈ {0, 1, . . . , 31}. Fixed point is a special case when j = 0. The Set ΘF The set containing all distinct values that satisfy Equation 1

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Linearity within Components

Table: Number of output words which are equivalent to the rotation of the input word by j bits to the left (0 ≤ j ≤ 31), for each component function

Set

ΘS ΘL ΘT ΘL0 ΘT 0

Number of elements in the set 39 1024 59 8 59

Number of fixed points 1 4 11 4 0

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Linearity within Components Random Permutation Probability that a given permutation of n elements has c fixed points is given by [Rio80, Chap. 3] pn,c =

1 n!

 ·

n c

 · (n − c )! ·

n−c

(−1)k 1 ≈ . k ! c !e k =0



Expected number of fixed points for a random permutation is one [GS97, Chap. 6] The Nonlinear Function T Number of fixed points = 11 Prob., p232 ,11 = 1/(11! · e) ≈ 9.216E − 9 The function T does not appear random

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Linearity within Components Random Permutation Probability that a given permutation of n elements has c fixed points is given by [Rio80, Chap. 3] pn,c =

1 n!

 ·

n c

 · (n − c )! ·

n−c

1 (−1)k ≈ . c !e k ! k =0



Expected number of fixed points for a random permutation is one [GS97, Chap. 6] The Nonlinear Function T Number of fixed points = 11 Prob., p232 ,11 = 1/(11! · e) ≈ 9.216E − 9 The function T does not appear random

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Linearity within Components Random Permutation Probability that a given permutation of n elements has c fixed points is given by [Rio80, Chap. 3] pn,c =

1 n!

 ·

n c

 · (n − c )! ·

n−c

1 (−1)k ≈ . c !e k ! k =0



Expected number of fixed points for a random permutation is one [GS97, Chap. 6] The Nonlinear Function T Number of fixed points = 11 Prob., p232 ,11 = 1/(11! · e) ≈ 9.216E − 9 The function T does not appear random

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Linearity within Components Random Permutation Probability that a given permutation of n elements has c fixed points is given by [Rio80, Chap. 3] pn,c =

1 n!

 ·

n c

 · (n − c )! ·

n−c

1 (−1)k ≈ . c !e k ! k =0



Expected number of fixed points for a random permutation is one [GS97, Chap. 6] The Nonlinear Function T Number of fixed points = 11 Prob., p232 ,11 = 1/(11! · e) ≈ 9.216E − 9 The function T does not appear random

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Linearity within Components Random Permutation Probability that a given permutation of n elements has c fixed points is given by [Rio80, Chap. 3] pn,c =

1 n!

 ·

n c

 · (n − c )! ·

n−c

1 (−1)k ≈ . c !e k ! k =0



Expected number of fixed points for a random permutation is one [GS97, Chap. 6] The Nonlinear Function T Number of fixed points = 11 Prob., p232 ,11 = 1/(11! · e) ≈ 9.216E − 9 The function T does not appear random

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

T versus T 0

Same input and output

The only difference between T and T 0 is the linear transformation L and L0 Eight Yi for which L(Yi ) = L0 (Yi ) The Yi are 00000000, 33333333, 55555555, 66666666, 99999999, AAAAAAAA, CCCCCCCC and FFFFFFFF T and T 0 There exist Xi = S −1 (Yi ) such that T (Xi ) = L(S (Xi )) = L0 (S (Xi )) = T 0 (Xi ) The Xi are 71717171, 28282828, 97979797, A5A5A5A5, 1F1F1F1F, 18181818, 04040404 and B9B9B9B9

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

T versus T 0

Same input and output

The only difference between T and T 0 is the linear transformation L and L0 Eight Yi for which L(Yi ) = L0 (Yi ) The Yi are 00000000, 33333333, 55555555, 66666666, 99999999, AAAAAAAA, CCCCCCCC and FFFFFFFF T and T 0 There exist Xi = S −1 (Yi ) such that T (Xi ) = L(S (Xi )) = L0 (S (Xi )) = T 0 (Xi ) The Xi are 71717171, 28282828, 97979797, A5A5A5A5, 1F1F1F1F, 18181818, 04040404 and B9B9B9B9

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Key Scheduling Algorithm

Subkey Sequence T0

(32-bit to 32-bit map) is bijective [ZWFS09]

Key Schedule M K0 K−4

A single 32-bit word is updated by T 0 , using other three 32-bit words as input After four rounds, all 128 bits of the master key are completely updated

M K1 F K0

M K2 F K1

M K3 F K2

F K3

K−3 CK0

K−2

K−1

K−2

K−1

K0

K0 CK3

K1

K2

K1

K2

K3

T′

K−3 K−1

Conjecture: all possible values of the first four subkeys are equally likely to occur

T′

K0

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Key Scheduling Algorithm

Subkey Sequence T0

(32-bit to 32-bit map) is bijective [ZWFS09]

Key Schedule M K0 K−4

A single 32-bit word is updated by T 0 , using other three 32-bit words as input After four rounds, all 128 bits of the master key are completely updated

M K1 F K0

M K2 F K1

M K3 F K2

F K3

K−3 CK0

K−2

K−1

K−2

K−1

K0

K0 CK3

K1

K2

K1

K2

K3

T′

K−3 K−1

Conjecture: all possible values of the first four subkeys are equally likely to occur

T′

K0

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Key Scheduling Algorithm

Subkey Sequence T0

(32-bit to 32-bit map) is bijective [ZWFS09]

Key Schedule M K0 K−4

A single 32-bit word is updated by T 0 , using other three 32-bit words as input After four rounds, all 128 bits of the master key are completely updated

M K1 F K0

M K2 F K1

M K3 F K2

F K3

K−3 CK0

K−2

K−1

K−2

K−1

K0

K0 CK3

K1

K2

K1

K2

K3

T′

K−3 K−1

Conjecture: all possible values of the first four subkeys are equally likely to occur

T′

K0

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Implications for the Key Scheduling Algorithm

Rounds 0–1 K−4

Rounds 2–3

K−3 CK0

K−2

K−3

K−2

K−1

K−3

K−2 CK1

K−1

ΘT ′

K−1

T′

K0 K0 ΘT ′

T′

K−2

K−1

K0

K1

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Implications for the Key Scheduling Algorithm

Rounds 0–1 K−4

Rounds 2–3

K−3 CK0

K−2

K−3

K−2

K−1

K−3

K−2 CK1

K−1

ΘT ′

K−1

T′

K0 K0 ΘT ′

T′

K−2

K−1

K0

K1

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Key Scheduling Algorithm

Rounds 0–1 K−4

K−3 CK0

Rounds 2–3 K−2

ΘT ′

K−1

K−2

T′

K0

K1 ΘT ′

T′

K−3

K−2

K−1

K−3

K−2 CK1

K−1

K0

K−1

K0

K1

K0

K−1

K0 CK3

K1

K1

K2

ΘT ′

T′

K−2

K−1 CK2

K2 K2 ΘT ′

T′

K−1

K0

K1

K0

K3

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Key Scheduling Algorithm

Rounds 0–1 K−4

K−3 CK0

Rounds 2–3 K−2

ΘT ′

K−1

K−2

T′

K0

K1 ΘT ′

T′

K−3

K−2

K−1

K−3

K−2 CK1

K−1

K0

K−1

K0

K1

K0

K−1

K0 CK3

K1

K1

K2

ΘT ′

T′

K−2

K−1 CK2

K2 K2 ΘT ′

T′

K−1

K0

K1

K0

K3

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Implications for the Key Scheduling Algorithm

Nature of Events Probability = (59/232 )4 ≈ 2−104.5

Number of master keys ≈ 223.5 ≈ 11, 863, 283

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Encryption Algorithm

Focusing on Specific Case of Fixed Points Only fixed points occur in the first four consecutive rounds

ˆ T : a subset of ΘT containing the 11 fixed points for T Θ

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Implications for the Encryption Algorithm

Rounds 0–1 X0

Rounds 2–3 X1

X2

X3 ˆT Θ

K0 T

X1 X1

X2

X3

X2

X3

X3

X4

K1

X0 ⊕ X1 ⊕ X2 ⊕ X3 ⊕ K 0 X4 ˆT Θ

T

X2

X0 ⊕ K 0 ⊕ K 1

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Implications for the Encryption Algorithm

Rounds 0–1 X0

Rounds 2–3 X1

X2

X3 ˆT Θ

K0 T

X1 X1

X2

X3

X2

X3

X3

X4

K1

X0 ⊕ X1 ⊕ X2 ⊕ X3 ⊕ K 0 X4 ˆT Θ

T

X2

X0 ⊕ K 0 ⊕ K 1

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Encryption Algorithm

Rounds 0–1 X0

Rounds 2–3 X1

X2

X3

X2

X4

X5 ˆT Θ

K2

T

T

X1 X1

X2

X3

X2

X3

K1

X0 ⊕ X1 ⊕ X2 ⊕ X3 ⊕ K 0 X4 ˆT Θ

X3 X3

X4

X5

X4

X5

X1 ⊕ K 1 ⊕ K 2 X6 ˆT Θ

K3

T

X2

X3

ˆT Θ

K0

T

X3

X4

X0 ⊕ K 0 ⊕ K 1

X4

X5

X6

X2 ⊕ K 2 ⊕ K 3

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for the Encryption Algorithm

Rounds 0–1 X0

Rounds 2–3 X1

X2

X3

X2

X4

X5 ˆT Θ

K2

T

T

X1 X1

X2

X3

X2

X3

K1

X0 ⊕ X1 ⊕ X2 ⊕ X3 ⊕ K 0 X4 ˆT Θ

X3 X3

X4

X5

X4

X5

X1 ⊕ K 1 ⊕ K 2 X6 ˆT Θ

K3

T

X2

X3

ˆT Θ

K0

T

X3

X4

X0 ⊕ K 0 ⊕ K 1

X4

X5

X6

X2 ⊕ K 2 ⊕ K 3

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Implications for the Encryption Algorithm

Output Block After Four Rounds X4 X5 X6 X7

= X0 ⊕ X1 ⊕ X2 ⊕ X3 ⊕ K0 = X0 ⊕ K0 ⊕ K1

= X1 ⊕ K1 ⊕ K2

= X2 ⊕ K2 ⊕ K3

Nature of Events Probability = (11/232 )4 ≈ 2−114.2

Number of plaintext blocks ≈ 213.8 ≈ 14, 263

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications for Key Scheduling and Encryption Algorithms

First Four Rounds are Linear If both key schedule and encryption behave linearly in the first four rounds Output block after four rounds – only linear combination of plaintext and master key blocks. Reduction in Number of Rounds Theoretically, number of effective rounds of SMS4 reduced by four (from 32 to 28 rounds) Linearity might not be restricted only to the case of the first four rounds

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Susceptibility to Attacks Algebraic

Inversion-Based S-Box The SMS4 S-box is based on a finite field inversion [LJH+ 07] Equations are quadratic 4 Rounds of Linear Equations Equations over GF (2): No quadratic equations for the first four rounds Statistical – needs more known plaintexts Reduction of quadratic equations – might help reducing complexity of solving equations

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Susceptibility to Attacks Advanced Variants of the Slide Attack

Slide Attack Sliding of the encryptions by a certain number of rounds [BW99] – similarity between the two encryptions Allows the sliding of encryption with decryption [BW00] Application to SMS4 Eight input words for which T and T 0 produce the same output words Slide encryption with key scheduling algorithm?

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Susceptibility to Attacks Subkeys and Related Keys

On the Subkey Sequence Explore the relationship between subkeys Determine classes of possible / impossible subkey sequences Related-Keys Extend to the case where the attacker is allowed to choose the relationship between two or more different master keys but not the actual value of the keys [Bih94, Knu93]

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Branch Numbers for L and L0

Branch Number for L Already been investigated by Zhang et al. [ZWFS09] Branch Number for L0 Our work

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

What is a Branch Number?

Definition The minimum number of active S-boxes for any two consecutive rounds (SPN ciphers) The minimum number of non-zero subword for any input and output pair of the linear transformation

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

What is a Branch Number?

Calculation of Branch Number ... ...

Xi = Xi,0 Xi,1 Xi,2 ΓXi = ΓXi,0 ΓXi,1 ΓXi,2

B(L)

L ΓYi = ΓYi,0 ΓYi,1 ΓYi,2 Yi = Yi,0 Yi,1 Yi,2

Xi,j ∈ {0, 1, . . . , 2b − 1} ΓXi,j ∈ {0, 1}

Xi,m−1 ΓXi,m−1

... ...

ΓYi,m−1 Yi,m−1

Yi = L(Xi ) ΓYi,j ∈ {0, 1}

Yi,j ∈ {0, 1, . . . , 2b − 1}

Branch Number

B(L) = min{wt (ΓXi ) + wt (ΓYi ) : Xi 6= 0 and Yi = L(Xi )} ≤ m + 1 where B(L) = m + 1 is optimal

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

What is a Branch Number?

Calculation of Branch Number ... ...

Xi = Xi,0 Xi,1 Xi,2 ΓXi = ΓXi,0 ΓXi,1 ΓXi,2

B(L)

L ΓYi = ΓYi,0 ΓYi,1 ΓYi,2 Yi = Yi,0 Yi,1 Yi,2

Xi,j ∈ {0, 1, . . . , 2b − 1} ΓXi,j ∈ {0, 1}

Xi,m−1 ΓXi,m−1

... ...

ΓYi,m−1 Yi,m−1

Yi = L(Xi ) ΓYi,j ∈ {0, 1}

Yi,j ∈ {0, 1, . . . , 2b − 1}

Branch Number

B(L) = min{wt (ΓXi ) + wt (ΓYi ) : Xi 6= 0 and Yi = L(Xi )} ≤ m + 1 where B(L) = m + 1 is optimal

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

What is a Branch Number?

Calculation of Branch Number ... ...

Xi = Xi,0 Xi,1 Xi,2 ΓXi = ΓXi,0 ΓXi,1 ΓXi,2

B(L)

L ΓYi = ΓYi,0 ΓYi,1 ΓYi,2 Yi = Yi,0 Yi,1 Yi,2

Xi,j ∈ {0, 1, . . . , 2b − 1} ΓXi,j ∈ {0, 1}

Xi,m−1 ΓXi,m−1

... ...

ΓYi,m−1 Yi,m−1

Yi = L(Xi ) ΓYi,j ∈ {0, 1}

Yi,j ∈ {0, 1, . . . , 2b − 1}

Branch Number

B(L) = min{wt (ΓXi ) + wt (ΓYi ) : Xi 6= 0 and Yi = L(Xi )} ≤ m + 1 where B(L) = m + 1 is optimal

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

What is a Branch Number?

Calculation of Branch Number ... ...

Xi = Xi,0 Xi,1 Xi,2 ΓXi = ΓXi,0 ΓXi,1 ΓXi,2

B(L)

L ΓYi = ΓYi,0 ΓYi,1 ΓYi,2 Yi = Yi,0 Yi,1 Yi,2

Xi,j ∈ {0, 1, . . . , 2b − 1} ΓXi,j ∈ {0, 1}

Xi,m−1 ΓXi,m−1

... ...

ΓYi,m−1 Yi,m−1

Yi = L(Xi ) ΓYi,j ∈ {0, 1}

Yi,j ∈ {0, 1, . . . , 2b − 1}

Branch Number

B(L) = min{wt (ΓXi ) + wt (ΓYi ) : Xi 6= 0 and Yi = L(Xi )} ≤ m + 1 where B(L) = m + 1 is optimal

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Branch Number for L and L0

L m=4

B(L) = 5, which is optimal [ZWFS09] L0 Search over all possible inputs and observe the outputs Result: B(L0 ) = 4, which is not optimal Input-output pattern distribution table

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications: Differential Attack on Modified SMS4 27-Round Key Recovery Attack

Modified Variant of SMS4 Replacing L with L0 5-Round Self-Iterating Characteristic Based on previous 5-round characteristic [KKHS08, ZWFS09, ZZW08] (six active S-boxes) New 5-round characteristic: four active S-boxes with prob. 2−28 Concatenated four and a half times: 23-round differential characteristic with prob. 2−112

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Implications: Differential Attack on Modified SMS4 27-Round Key Recovery Attack

Complexities 2116 chosen plaintexts 2115 encryptions Comments Attack on modified variant: 27 rounds – one round short of the effective 28 rounds Best attack on existing variant: 22 rounds – six rounds short of the effective 28 rounds Number of rounds is reduced if the four-round linearity can be exploited

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Summary and Conclusion

Summary Several new observations on SMS4: Existence of fixed points and of simple linear relationships within components Branch number of L0 is less than optimal

Implications: Effective number of rounds is reduced by four A differential attack on modified SMS4 reduced to 27 rounds

Conclusion Components not selected randomly – criteria not known Findings might be used for further cryptanalysis

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Summary and Conclusion

Summary Several new observations on SMS4: Existence of fixed points and of simple linear relationships within components Branch number of L0 is less than optimal

Implications: Effective number of rounds is reduced by four A differential attack on modified SMS4 reduced to 27 rounds

Conclusion Components not selected randomly – criteria not known Findings might be used for further cryptanalysis

Introduction

Description of SMS4

Linearity

Cryptographic Significance

Thank You

THANK YOU. QUESTIONS?

On the Branch Number of L0

Summary and Conclusion

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Eli Biham. New Types of Cryptanalytic Attacks Using Related Keys. In Tor Helleseth, editor, Advances in Cryptology – EUROCRYPT ’93: Workshop on the Theory and Application of Cryptographic Techniques, volume 765 of Lecture Notes in Computer Science, pages 398–409. Springer-Verlag, 1994. Alex Biryukov and David Wagner. Slide Attacks. In Lars Knudsen, editor, Fast Software Encryption: 6th International Workshop, FSE’99, volume 1636 of Lecture Notes in Computer Science, pages 245–259. Springer-Verlag, 1999. Alex Biryukov and David Wagner. Advanced Slide Attacks. In Bart Preneel, editor, Advances in Cryptology – EUROCRYPT 2000: International Conference on the Theory and Application of Cryptographic Techniques, volume 1807 of Lecture Notes in Computer Science, pages 589–606. Springer-Verlag, 2000.

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

Charles M. Grinstead and James L. Snell. Introduction to Probability. American Mathematical Society, 2nd revised ed. edition, 1997. Taehyun Kim, Jongsung Kim, Seokhie Hong, and Jaechul Sung. Linear and Differential Cryptanalysis of Reduced SMS4 Block Cipher. Cryptology ePrint Archive, Report 2008/281, 2008. Available at http://eprint.iacr.org/2008/281/. Lars Knudsen. Cryptanalysis of LOKI91. In Jennifer Seberry and Yuliang Zheng, editors, Advances in Cryptology – ASIACRYPT ’92, Workshop on the Theory and Application of Cryptographic Techniques, volume 718 of Lecture Notes in Computer Science, pages 22–35. Springer-Verlag, 1993. Fen Liu, Wen Ji, Lei Hu, Jintai Ding, Shuwang Lv, Andrei Pyshkin, and Ralf-Philipp Weinmann. Analysis of the SMS4 Block Cipher.

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

In Josef Pieprzyk, Hossein Ghodosi, and Ed Dawson, editors, Information Security and Privacy: 12th Australasian Conference, ACISP 2007, volume 4586 of Lecture Notes in Computer Science, pages 158ï¿ 21 –170. Springer-Verlag, 2007. John Riordan. An Introduction to Combinatorial Analysis. Princeton University Press, 1980. Wentao Zhang, Wenling Wu, Dengguo Feng, and Bozhan Su. Some New Observations on the SMS4 Block Cipher in the Chinese WAPI Standard. In Feng Bao, Hui Li, and Guilin Wang, editors, Information Security Practice and Experience, 5th International Conference, ISPEC 2009, volume 5451 of Lecture Notes in Computer Science, pages 324–335. Springer-Verlag, 2009. Lei Zhang, Wentao Zhang, and Wenling Wu. Cryptanalysis of Reduced-Round SMS4 Block Cipher.

Introduction

Description of SMS4

Linearity

Cryptographic Significance

On the Branch Number of L0

Summary and Conclusion

In Yi Mu, Willy Susilo, and Jennifer Seberry, editors, Information Security and Privacy, 13th Australasian Conference, ACISP 2008, volume 5107 of Lecture Notes in Computer Science, pages 216–229. Springer-Verlag, 2008.

Linearity within the SMS4 Block Cipher

Queensland University of Technology, Australia ...... Techniques, volume 765 of Lecture Notes in Computer Science, ... Princeton University Press, 1980. Wentao ...

917KB Sizes 0 Downloads 214 Views

Recommend Documents

The LED Block Cipher
AddConstants: xor round-dependent constants to the two first columns ..... cube testers: the best we could find within practical time complexity is ... 57 cycles/byte.

Attacking Reduced-Round Versions of the SMS4 Block ...
of Lecture Notes in Computer Science, pp. 306–318 .... computer programs. ...... Office of State Commercial Cryptography Administration, P.R. China, The SMS4.

FPGA Implementations of the RC6 Block Cipher
ten exceed 128 bits and a simple solution, known as Electronic Codebook (ECB) ..... designer with libraries containing the basic building blocks of a given FPGA.

Weak Keys of the Full MISTY1 Block Cipher for Related ...
keys and a related-key differential attack on the full MISTY1 with a data complexity of 261 chosen ... their paper appeared in the LNCS website a few days ago, acknowledging us, where the results were modified as ..... round MISTY1 without the first

Attacking 44 Rounds of the SHACAL-2 Block Cipher ...
formation Technology Research Center) support program .... Ci+1 = Bi,. Bi+1 = Ai,. Ai+1 = Ti+1. 1. Ш Ti+1. 2 . 3. The ciphertext C is (A64,B64,C64,D64,E64,F64,.

Weak Keys of the Full MISTY1 Block Cipher for Related ...
(02||(a⊕D)))), and it can take about 215 values in {0,1}16; we denote the set of 215 values ...... Set a binary marker with two possible statuses, “up” and “down”, to the ..... B.K. (ed.) ASIACRYPT 2005. LNCS, vol. 3788, pp. 443–461. Spri

The Shadow Cipher
epic alternate history series about three kids who try to solve the greatest mystery of the modern world: a puzzle and treasure hunt laid into the very streets and ...

IDEA cipher - GitHub
signed by James Massey of ETH Zurich and Xuejia Lai and was first de- scribed in ... A symmetric key algorithm is a cryptography algorithm that use the same.

THROUGHPUT OPTIMIZATION OF THE CIPHER ...
digital signatures, MACs are computed and verified with the ... MACs are used in public key digital .... access and read the security system's memory (RAM) to.

THROUGHPUT OPTIMIZATION OF THE CIPHER ...
primitive IP in the system, such as common block ciphers, and not a special .... access and read the security system's memory (RAM) to reveal our keys and ...

Block
What does Elie's father learn at the special meeting of the Council? 11. Who were their first oppressors and how did Wiesel say he felt about them? 12. Who was ...

Block
10. What does Elie's father learn at the special meeting of the Council? 11. Who were their ... 5. What did the Jews in the train car discover when they looked out the window? 6. When did ... How did Elie describe the men after the air raid? 8.

NOTES ON THE LINEARITY DEFECT AND ...
nates, we can assume that ai = xi. Similarly, we can assume that bi = yi. Hence it remains to consider the case. I = (x1,...,xp),. J = (y1,...,yq),. K = (z1,...,zr,x1 + y1,...

Block the Vote
Oct 30, 2008 - prisoned for their role in the conspiracy.) In practice, many of the “reforms” .... But under the new rules, those mis- takes are costing citizens the ...

π–Cipher v2 -
2ITEM, Norwegian University of Science and Technology, Trondheim, Norway .... rn a l. S ta te. C. I. S tag T. C1. Mm pctr ` a ` 1q ` m||UpdCtrm π fu n ction π fu n.

Novel Hardware Implementation of the Cipher Message ...
been deployed by VISA, MasterCard, and many other leading companies .... the computation of the MAC may begin “online” before the entire message is ...

Novel Hardware Implementation of the Cipher ...
MACs are used in public key digital signature tech- niques that provide data .... portable clients (for data collection), that need to be cheap, small, and have minor ...

vigenere cipher example pdf
Page 1 of 1. vigenere cipher example pdf. Click here if your download doesn't start automatically. Page 1 of 1. vigenere cipher example pdf. vigenere cipher ...