generalized correlation analysis of vectorial boolean
play

Generalized Correlation Analysis of Vectorial Boolean Functions - PowerPoint PPT Presentation

Generalized Correlation Analysis of Vectorial Boolean Functions Claude Carlet, Khoongming Khoo, Chu-Wee Lim and Chuan-Wen Loe Introduction Correlation Attack of Vectorial Stream Ciphers In this talk, we shall improve correlation attacks on


  1. Generalized Correlation Analysis of Vectorial Boolean Functions Claude Carlet, Khoongming Khoo, Chu-Wee Lim and Chuan-Wen Loe

  2. Introduction

  3. Correlation Attack of Vectorial Stream Ciphers � In this talk, we shall improve correlation attacks on vectorial stream ciphers. � Will consider vectorial Boolean functions in combinatorial and filtering generators. � Will not go into the details of the correlation attack. � Focus on how to obtain good linear approximation.

  4. Correlation Attack of Vectorial Stream Ciphers LFSR 1 LFSR x 1 z 1 Vector x 2 x 1 x 2 x n LFSR 2 z 2 Boolean Vector Function z m Boolean Function LFSR n x n z 1 z 2 z m � In standard correlation attack of vectorial Boolean functions, we form linear approximation of the form: ⊕ ⊕ = ⊕ ⊕ = ⋅ = ⋅ Pr( ) Pr( ). L L b z b z w x w x b z w x 1 1 1 1 m m n n

  5. Linear Bias and Nonlinearity � For correlation attack to succeed, we require = ⋅ = ⋅ − Bias Pr( ) 1 / 2 to be high. b z w x where z = F ( x ) is the output. I.e. probability far away from ½ . � This is equivalent to the condition that nonlinearity 1 ∑ − ⋅ + ⋅ = − − 1 ( ) 2 max ( 1 ) is low, n b F x w x N F 2 ≠ 0 , ∈ w b n ( 2 ) x GF

  6. Zhang-Chan Attack � At Crypto 2000, Zhang and Chan noticed that z = F ( x ) is known, therefore we can consider = ⊕ ⊕ = = ⋅ Pr( ( ) ) Pr( ( ) ) L g z w x w x g z w x 1 1 n n which is linear in x for any Boolean function g ( ⋅ ). � Because approximation of b ⋅ z is a particular case of approximation of g ( z ) . It is easier to get a better linear approximation, i.e. get Pr( g ( z )= w ⋅ x ) further away from ½ than Pr( b ⋅ z = w ⋅ x ).

  7. Zhang-Chan Attack � For Zhang-Chan attack to succeed, we require = = ⋅ − Bias Pr( ( ) ) 1 / 2 to be high. g z w x where z = F ( x ) is known. � This is equivalent to the condition that unrestricted nonlinearity 1 ∑ − + ⋅ = − − 1 ( ( )) 2 max ( 1 ) is low, n g F x w x UN F 2 ≠ ⋅ 0 , ( ) n ∈ w g x GF(2)

  8. Generalized Correlation

  9. Generalized Correlation Attack � We still want to get approximations which are linear in x . � The most general approximation which is linear in x : = ⊕ ⊕ = = ⋅ Pr( ( ) ( ) ( ) ) Pr( ( ) ( ) ) L g z w z x w z x g z w z x 1 1 n n where w i ( z ) are Boolean functions of the known output z and w ( z )=( w 1 ( z ) ,…, w n ( z ))

  10. Generalized Correlation Attack � For generalized correlation attack to succeed, we require = = ⋅ − Bias Pr( ( ) ( ) ) 1 / 2 to be high. g z w z x where z = F ( x ) is known. � This is equivalent to the condition that generalized nonlinearity 1 ∑ − + ⋅ = − − 1 ( ( )) ( ( )) 2 max ( 1 ) is low, n g F x w F x x GN F 2 ⋅ ≠ ⋅ ( ) 0 , ( ) w g ∈ ( 2 ) n x GF

  11. Generalized Correlation Attack � g ( z )= w ( z ) ⋅ x is a more general approximation than g ( z )= w ⋅ x , which in turn is a more general approximation than b ⋅ z = w ⋅ x. � Therefore Pr( g ( z )= w ( z ) ⋅ x ) can be chosen to be further away from ½ than the other two approximations. � In terms of nonlinearities, GN F ≤ UN F ≤ N F

  12. From a Cipher Designer’s Viewpoint � From the viewpoint of a stream cipher designer, he needs to ensure generalized nonlinearity GN F is high for protection against correlation attack. Then automatically, UN F and N F will be high.

  13. Comparison of Generalized Correlation Attack with Known Methods

  14. An Example on Bent Functions 0000 0001 0010 0011 0100 0101 0110 0111 x=x 1 x 2 x 3 x 4 00 00 00 00 00 01 10 11 F ( x )=( z 1 z 2 ) 1000 1001 1010 1011 1100 1101 1110 1111 x=x 1 x 2 x 3 x 4 11 00 10 01 11 01 00 10 F ( x )=( z 1 z 2 ) � F ( x ) is a bent function from GF(2) 4 to GF(2) 2 . We have N F =6 and UN F =5 . This means the best affine approximation has probability 0.63 and 0.69 for usual and Zhang-Chan. � For generalized correlation attack, we have GN F =2. The best generalized approximation has probability: + = + + + + = Pr( ( 1 )( 1 ) ) 0 . 88 z z z z x z x z x 1 2 1 2 2 1 3 2 4

  15. How much better is Generalized Correlation Attack? � Below is a table comparing average nonlinearities of 10000 randomly generated balanced functions from n -bits to n /2 -bits: 6 8 10 12 14 n 18 100 443 1897 7856 N F 16 88 407 1768 7454 UN F 6 36 213 1101 5224 GN F GN F is much lower than N F and UN F

  16. How much better is Generalized Correlation Attack? � Here’s the table for average best approximation probability of the previous functions from n -bits to n /2 -bits: 6 8 10 12 14 n Probability 0.72 0.61 0.57 0.54 0.52 (usual) Probability 0.75 0.66 0.60 0.57 0.55 (Zhang-Chan) Probability 0.91 0.86 0.79 0.73 0.68 (generalized) Probability of generalized attack much further away from 0.5 than the other attacks

  17. Another Example on Inverse Function � Let us compare the various approximation probability for x -1 on GF(2 8 ) restricted to m output bits. 1 2 3 4 5 6 7 m 0.56 0.56 0.56 0.56 0.56 0.56 0.56 Probability (usual) 0.56 0.58 0.61 0.63 0.67 0.73 0.78 Probability (Zhang-Chan) 0.56 0.69 0.74 0.84 Probability 1.00 1.00 1.00 (generalized)

  18. Computation of Generalized Nonlinearity

  19. Computation of Generalized Nonlinearity � Since we saw that generalized correlation attack is more powerful than known attacks, it is useful to compute the generalized nonlinearity. 1 ∑ − + ⋅ = − − 1 ( ( )) ( ( )) 2 max ( 1 ) n g F x w F x x GN F 2 ⋅ ≠ ⋅ ( ) 0 , ( ) w g ∈ ( 2 ) n x GF � We need to compute ∑ + + + − ( ( )) ( ( )) ( ( )) L ( 1 ) g F x w F x x w F x x 1 1 n n ∈ n ( 2 ) x GF over all choices of g , w 1 ,…, w n :GF(2) m → GF(2).

  20. Computation of Generalized Nonlinearity Each of these n+1 functions have 2 2^m � We need to compute choices ∑ + + + − ( ( )) ( ( )) ( ( )) L Each sum has ( 1 ) g F x w F x x w F x x 1 1 n n complexity 2 n ∈ n ( 2 ) x GF over all choices of g , w 1 ,…, w n :GF(2) m → GF(2). � Therefore complexity is approximately ( ) + 1 n + + m × = m 2 2 ( 1 ) 2 2 n 2 n n

  21. More Efficient Computation of Generalized Nonlinearity Theorem: The generalized nonlinearity � 1 ∑ − + ⋅ = − − 1 ( ( )) ( ( )) 2 max ( 1 ) n g F x w F x x GN F 2 ⋅ ≠ ⋅ ( ) 0 , ( ) w g ∈ n ( 2 ) x GF can be computed as 1 ∑ ∑ − ⋅ = − − 1 2 max ( 1 ) n w x GN F 2 ∈ n ( 2 ) \{ 0 } w GF − 1 ∈ ∈ m ( 2 ) ( ) z GF x F z Here we do not find the optimal functions w 1 (),…, w n () and g (), instead we just find an optimal vector w ∈ GF(2) n \{0} at each z .

  22. Complexity 2 n - 1 choices for w 1 ∑ ∑ − ⋅ = − − 1 2 max ( 1 ) n w x GN F 2 ∈ ( 2 ) n \{ 0 } w GF Complexity − 1 ∈ ∈ m ( 2 ) ( ) z GF x F z for this sum is | F -1 ( z )| � The new complexity for computing generalized nonlinearity is ∑ − − × 1 = − ≈ 2 ( 2 n 1 ) ( ) ( 2 n 1 ) 2 n 2 n F z ∈ m ( 2 ) z GF � This is much faster compared to original complexity of + ) + m 2 ( 1 2 n n

  23. Upper Bound on Generalized Nonlinearity

  24. Upper Bound � Theorem: If F ( x ) is balanced, then an upper bound for GN F : − 2 1 m − − ≤ − 1 1 2 2 n n GN − F 2 1 n � This is much lower than the known upper bounds for unrestricted nonlinearity UN F and nonlinearity N F : ⎛ ⎞ 2 − ⎛ ⎞ − − − 2 2 2 2 1 ⎜ 2 2 2 2 2 2 ⎟ m m n n m m m ≤ − − + + ⎜ − ⎟ − 1 2 1 1 n UN ⎜ ⎟ ⎜ ⎟ − − − F 2 ⎜ 2 1 2 1 2 1 ⎟ n n n ⎝ ⎠ ⎝ ⎠ − − ≤ − 1 / 2 1 2 2 n n N F

  25. For m ≤ n /2 , the upper bound for unrestricted nonlinearity UN F does not improve on the Covering Radius Bound 2 n -1 -2 n /2-1 . The upper bound for generalized nonlinearity GN F does.

  26. Comparison of Upper Bound for N F ,UN F and GN F 6 8 10 12 14 16 n 3 4 5 6 7 8 m=n /2 28 120 496 2016 8128 32640 Upp Bd N F 29 121 497 2017 8129 32641 Upp Bd UN F 22 97 423 1794 7471 30724 Upp Bd GN F

  27. Corresponding Bound for Probability of Best Approximation 6 8 10 12 14 16 n 3 4 5 6 7 8 m=n /2 ≥ 0.563 ≥ 0.531 ≥ 0.516 ≥ 0.508 ≥ 0.504 ≥ 0.502 Probability (usual) ≥ 0.558 ≥ 0.530 ≥ 0.515 ≥ 0.508 ≥ 0.504 ≥ 0.502 Probability (Zhang-Chan) ≥ 0.667 ≥ 0.621 ≥ 0.587 ≥ 0.562 ≥ 0.544 ≥ 0.531 Probability (generalized)

  28. For m > n /2 , the upper bound for unrestricted nonlinearity UN F does improve on the Covering Radius Bound but not by much. The upper bound for generalized nonlinearity GN F improves on the Covering Radius bound 2 n -1 -2 n /2-1 by much more.

  29. Comparison of Upper Bound for N F ,UN F and GN F 6 8 10 12 14 16 n 4 6 7 9 10 12 m= 3 n /4 28 120 496 2016 8128 32640 Upp Bd N F 27 110 487 1972 8090 32460 Upp Bd UN F 17 65 332 1325 6145 24577 Upp Bd GN F

Recommend


More recommend