The lower bounds on the second order nonlinearity of three classes of Boolean functions with high nonlinearity

The lower bounds on the second order nonlinearity of three classes of Boolean functions with high nonlinearity

Information Sciences 179 (2009) 267–278 Contents lists available at ScienceDirect Information Sciences journal homepage: www.elsevier.com/locate/ins...

272KB Sizes 0 Downloads 52 Views

Information Sciences 179 (2009) 267–278

Contents lists available at ScienceDirect

Information Sciences journal homepage: www.elsevier.com/locate/ins

The lower bounds on the second order nonlinearity of three classes of Boolean functions with high nonlinearity q Guanghong Sun a,b,c,*, Chuankun Wu a a b c

The State Key Laboratory of Information Security, Institute of Software, Chinese Academy of Sciences, 4# South Fourth Street, Beijing 100190, China The Graduate University of the Chinese Academy of Sciences, Beijing 100049, China College of Sciences, Hohai University, Nanjing 210098, China

a r t i c l e

i n f o

Article history: Received 14 April 2008 Received in revised form 23 September 2008 Accepted 1 October 2008

a b s t r a c t The rth order nonlinearity of Boolean functions is an important cryptographic criterion associated with some attacks on stream and block ciphers. It is also very useful in coding theory, since it is related to the covering radii of Reed–Muller codes. This paper tightens the lower bounds of the second order nonlinearity of three classes of Boolean functions in the form f ðxÞ ¼ trðxd Þ in n variables, where (1) d ¼ 2mþ1 þ 3 and n ¼ 2m, or (2) d ¼ mþ1 2m þ 2 2 þ 1, n ¼ 2m and m is odd, or (3) d ¼ 22r þ 2rþ1 þ 1 and n ¼ 4r. Ó 2008 Elsevier Inc. All rights reserved.

Keywords: Boolean function Cryptography Nonlinearity Derivation Walsh coefficient Reed–Muller code

1. Introduction Boolean functions are the core components in the design of many symmetric key cryptosystems (stream ciphers and block ciphers). A characteristic of Boolean functions, called their nonlinearity profile, plays an important role with respect to the affine approximation attack on the cryptosystems in which such functions are involved. Let f : F 2n # F 2 be an n-variable Boolean function. For every nonnegative integer r 6 n, we denote by nlr ðf Þ the minimum Hamming distance of f and all functions of algebraic degrees at most r (in the case of r ¼ 1, we shall simply write nlðf Þ). In other words, nlr ðf Þ equals the distance from f in its truth table representation to the Reed–Muller code RMðr; nÞ of length 2n and of order r. This distance is called the rth order nonlinearity of f (simply the nonlinearity in the case when r ¼ 1). It is seen by definition that the maximum rth order nonlinearity of all Boolean functions in n variables equals the covering radius of RMðr; nÞ [9]. The nonlinearity profile of a function f is the sequence of those values nlr ðf Þ for r ranging from 1 to n  1. Unfortunately, so far very little is known about nlr ðf Þ for r > 1. The best known upper bound [7] on nlr ðf Þ has an asymptotic version

nlr ðf Þ ¼ 2n1 

pffiffiffiffiffiffi pffiffiffi n 15  ð1 þ 2Þr2  22 þ Oðnr2 Þ: 2

q

This work was supported by the Natural Science Foundation of China under Grant No. 60673068. * Corresponding author. Address: The State Key Laboratory of Information Security, Institute of Software, Chinese Academy of Sciences, 4# South Fourth Street, Beijing 100190, China. E-mail addresses: [email protected] (G. Sun), [email protected] (C. Wu). 0020-0255/$ - see front matter Ó 2008 Elsevier Inc. All rights reserved. doi:10.1016/j.ins.2008.10.002

268

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Computing the rth order nonlinearity of a given Boolean function with algebraic degree strictly greater than r is a difficult task for r > 1. In the case when r ¼ 1, much study has been done, both in theoretical analysis and algorithm implementation, since the nonlinearity is related to the Walsh transform, which can be computed by the algorithm of the fast Fourier transform (FFT). For r > 1, very little is known, even the second order nonlinearity is known only for a few particular functions and for functions in small number of variables. A nice algorithm due to Kabatiansky and Tavernier was improved and implemented by Fourquet and Tavernier [16], Kabatiansky and Tavernier[18] and Dumer et al. [15], which works well for r ¼ 2 and n 6 11 (in some cases, n 6 13). The algorithm can be applied for higher orders of nonlinearity, but it is less efficient except when the function is in very small number of variables. While the exact value of the rth order nonlinearity of a Boolean function is difficult to compute, the lower bounds can be useful. However to find a good lower bound is also a quite difficult task, even for the second order nonlinearity. Until recently, there has been only one attempt, by Iwata–Kurosawa [17], to construct functions with lower bounded rth order nonlinearity. However, the lower bound is a small value 2nr3 ðr þ 5Þ, r 6 n  3. A lower bound on the rth order nonlinearity of functions with given algebraic immunity has been studied in [6] and improved in [4]. It gives better results than those of [17] for functions f with good algebraic immunity AIðf Þ, i.e., when AIðf Þ is close to its upper bound d2ne. In this case, the lower bound is roughly equal to

max

AIðfX Þr1  i¼0

 AIðfX ! Þr1  nr ;2 ; i i i¼0

n

which is still a small value in many cases. In [5], Carlet deduced the lower bounds of the second order nonlinearity of several classes of Boolean functions, such as t and n odd, or when t ¼ nþ1 and n odd, and the inverse function the Welch function f ðxÞ ¼ trðx2 þ3 Þ, when t ¼ n1 2 2 Pn1 2i 2n 2 Þ. Here trðxÞ denotes the trace function trðxÞ ¼ i¼0 x from F 2n into F 2 . The approach was to study the nonlinf ðxÞ ¼ trðx earity of the derivative of the function f. In this paper, we deduce the lower bounds of the second order nonlinearity of another three classes of Boolean functions, that is, f ðxÞ ¼ trðxd Þ, where (1) d ¼ 2mþ1 þ 3 and n ¼ 2m, or mþ1 (2) d ¼ 2m þ 2 2 þ 1, n ¼ 2m and m is odd, or 2r (3) d ¼ 2 þ 2rþ1 þ 1 and n ¼ 4r. The reason for choosing these three classes of Boolean functions is that they are known to have high nonlinearity [10,19]. More precisely, the following are known from public literatures. mþ1

 Let m be an odd integer and n ¼ 2m. Then for d ¼ 2m þ 2 2 þ 1, the Walsh coefficients of the function f ðxÞ ¼ trðxd Þ have only three values 0; 2mþ1 (see [10]).  Let m be an odd integer and n ¼ 2m. Then for d ¼ 2mþ1 þ 3, the Walsh coefficients of the function f ðxÞ ¼ trðxd Þ have only three values 0; 2mþ1 (see [10]). 2r rþ1  Let n ¼ 4r and r be odd. Then the function f ðxÞ ¼ trðax2 þ2 þ1 Þ is a bent function for some a 2 F 2n (see [19]). From the relationship between the Walsh coefficients and the nonlinearity of a Boolean function which is introduced later, it is seen that the above three classes of Boolean functions all have high nonlinearity. The rest of the paper is organized as follows: In Section 2, we give some preliminaries that will be needed in the sequel. Section 3 gives the main results, the lower bounds of the second order nonlinearity of three classes of Boolean functions. Section 4 concludes the paper. 2. Preliminaries Let F 2 ¼ f0; 1g be the binary field, F n2 be the n-dimensional vector space over F 2 . A mapping from F n2 into F 2 is called a Boolean function in n variables, denoted by f ðx1 ; x2 ; . . . ; xn Þ, or f ðxÞ in brief. Let Bn be the set of all the n-variable Boolean functions. One of the representations of a Boolean function f ðx1 ; x2 ; . . . ; xn Þ is by its truth table, i.e., the vector of all of its outputs which form a binary vector of dimension 2n ,

f ¼ ½f ð0; 0; . . . ; 0Þ; f ð1; 0; . . . ; 0Þ; f ð0; 1; . . . ; 0Þ; f ð1; 1; . . . ; 0Þ; . . . ; f ð1; 1; . . . ; 1Þ: The Hamming weight of a Boolean function f 2 Bn is the number of nonzero coordinates in its truth table, denoted by wt(f). The support of f ðxÞ is defined as the set suppðf Þ ¼ fx 2 F n2 jf ðxÞ ¼ 1g. The Hamming distance dðf ; gÞ between two Boolean functions f ðxÞ and gðxÞ is the number of their different coordinates, which equals the Hamming weight of their sum f þ g, where + denotes the addition on F 2 , i.e., the XOR. We say that a Boolean function f is balanced if its truth table contains an equal number of 1’s and 0’s, that is, if its Hamming weight equals 2n1 . For cryptographic applications, we are more interested in the algebraic properties of Boolean functions. However the truth table of a Boolean function does not give much information about the algebraic complexity of the function. So we need

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

269

another representation of Boolean functions. A Boolean function f ðxÞ has a unique representation as a multivariate polynomial over F 2 , called the algebraic normal form (ANF), that is

X

f ðx1 ; x2 ; . . . ; xn Þ ¼

aI

Y

I # f1;2;...;ng

xi ;

i2I

where the aI 2 F 2 . The algebraic degree, denoted by degðf Þ, is the number of variables in the highest order term with nonzero coefficient. A Boolean function is affine if it has degree at most 1. The set of all affine functions is denoted by An . Let a; x 2 F n2 , define their scalar product to be ha; xi ¼ a1 x1 þ a2 x2 þ    þ an xn , a; x 2 F n2 . Let f : F n2 # F 2 be a Boolean function, then the function

a 2 F n2 # W f ðaÞ ¼

X

ð1Þf ðxÞþha;xi

x2F n2

is called the Walsh transform of f. Moreover, the values W f ðaÞ for all a 2 F n2 are called the Walsh coefficients of f. It is trivial to deduce that the relation between the nonlinearity and the Walsh coefficients is

nlðf Þ ¼ 2n1 

1 max jW f ðaÞj: 2 a2F n2

ð1Þ

P n By Parseval’s equality, a2F n W f ðaÞ2 ¼ 22n , we have nlðf Þ 6 2n1  221 . When the equality holds, we call the Boolean func2 tion a bent function. Obviously, n must be even when the function f is bent. Therefore when n is even, the nonlinearity of bent functions reaches the maximum value, and hence can withstand the linear attack (to be more precise, linear approximation or affine approximation attack) to the most extent [8], and can also well withstand the correlation attack [3,11]. Since there is a natural isomorphic mapping from F n2 to the Galois field L ¼ F 2n , for the simplicity of discussion, we will identify the vector space F n2 the same as the Galois field L ¼ F 2n . In fact, a vector in F n2 is the coordinates of an element in F 2n when represented by a fixed primitive element. Let m j n and E ¼ F 2m . The function n

tr L=E ðxÞ ¼

m1 X

mi

x2

i¼0

is called a trace function from L to E. If m ¼ 1, namely E ¼ F 2 , we denote trL=E simply by tr which is called the absolute trace function. The trace function has the following properties [20]: (a) trL=E ðax þ byÞ ¼ atrL=E ðxÞ þ btr L=E ðyÞ for all x; y 2 L and a; b 2 E. (b) tr L=E ðxq Þ ¼ trL=E ðxÞ for all x 2 L and q ¼ 2m . (c) Let K be a finite field, F be a finite extension of K, and E be a finite extension of F, that is K  F  E. Then trE=K ðxÞ ¼ trF=K ðtr E=F ðxÞÞ for all x 2 E. As the notion of the Walsh transform refers to a scalar product, it is convenient to choose the isomorphism from F n2 to L ¼ F 2n in such a way that the canonical scalar product h; i in F n2 coincides with the canonical scalar product in L, which is the trace of the product, so we can write

hx; yi ¼

n X

xi yi ¼ trðxyÞ;

x; y 2 L:

i¼1

Therefore the Walsh transform of f : L # F 2 can be written as

W f ðaÞ ¼

X ð1Þf ðxÞ vðaxÞ;

a 2 L;

x2L

where

vðxÞ ¼ ð1ÞtrðxÞ is the canonical additive character on L. We define the derivative of f in the direction a 2 F n2 , denote by Da f , as

Da f ¼ f ðxÞ þ f ðx þ aÞ: Applying such discrete derivation several times to a function f leads to a higher order derivative

Da1    Dak f ðxÞ ¼

X u2F k2

f xþ

k X i¼1

! ui ai :

270

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Note n o P (1) If a1 ; . . . ; ak are not linearly independent, then Da1    Dak f is zero; otherwise, the set x þ ki¼1 ui ai ju 2 F k2 is a k-dimensional flat. (2) Every derivation reduces the algebraic degree of f by at least 1.

3. The lower bounds of the second order nonlinearity of three classes of Boolean functions In this section we study the lower bounds of the second order nonlinearity of Boolean functions in n variables in the form of f ðxÞ ¼ trðxd Þ, where (1) d ¼ 2mþ1 þ 3 and n ¼ 2m, or mþ1 (2) d ¼ 2m þ 2 2 þ 1, n ¼ 2m, and m is odd, or 2r (3) d ¼ 2 þ 2rþ1 þ 1 and n ¼ 4r. These three classes of Boolean functions are known to have high nonlinearity (see [10,19]). However, high nonlinearity i does not guarantee that the second order nonlinearity is also high. For example, bent function f ðxÞ ¼ trðx2 þ1 Þ has the maximum nonlinearity, but it is trivial to verify that the second order nonlinearity of the function is zero. Hence it is interesting to study the lower bounds of the second order nonlinearity of Boolean functions. As far as we know, there are few results about the lower bounds of the second order nonlinearity of Boolean functions. In the following, we will make use of the multivariate method which was introduced by Hans Dobbertin. Recently, the method has often been used in the study of Boolean functions (see [1,2,12–14]). The following lemma is important to prove our conclusions. Lemma 1 [5]. Let f be any n-variable function and r be a positive integer smaller than n. Then we have

nlr ðf Þ P 2n1 

1 2

sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ffi X nlr1 ðDa f Þ: 22n  2

ð2Þ

a2F n2

By Lemma 1, we obtain the following corollary. Corollary 1. Let f be an n-variable Boolean function and r a positive integer smaller than n. Assume that for some nonnegative integer K and k, we have nlr1 ðDa f Þ P 2n1  K2k for every nonzero a 2 F n2 , then

nlr ðf Þ P 2n1 

1 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi pffiffiffiffi nþk1 ð2n  1ÞK2kþ1 þ 2n  2n1  K 2 2 :

ð3Þ

Below we will deduce the lower bounds of the second order nonlinearity of Boolean functions. By Lemma 1, if we can calculate the lower bound of the nonlinearity of the Boolean function Da f , then it is possible to obtain a lower bound of the second order nonlinearity of f. We consider the following cases. 3.1. When d ¼ 2mþ1 þ 3 and n ¼ 2m Lemma 2. Any derivative, in a nonzero direction, of the function f ðxÞ ¼ trðxd Þ, has nonlinearity satisfying

( nlðDa f Þ P

22m1  2m ; 2

2m1

if a R F 2m ;

3m 2

 2 ; if a 2 F 2m ;

where d ¼ 2mþ1 þ 3 and n ¼ 2m. mþ1

Proof. Since f ðxÞ ¼ trðx2

þ3

Þ, we have

Da f ðxÞ ¼ f ðx þ aÞ þ f ðxÞ ¼ trððx þ aÞ2 ¼ trðx2

mþ1

þ2

mþ1

a þ x2

mþ1

mþ1

þ1 2

a þ x2

þ3

Þ þ trðx2

mþ1

mþ1

a3 þ x3 a2

þ3

mþ1

Þ ¼ trððx2

þ x2 a2

mþ1

þ1

þ2

þ x2

mþ1

þ xa2

þ2

mþ1

a2 þ x2 a2

þ a2

mþ1

þ3

mþ1

þ a2

mþ1

þ2

Þðx þ aÞ þ x2

mþ1

þ3

Þ:

Write gðxÞ ¼ Da f ðxÞ, then we get

gðxÞ þ gðx þ yÞ ¼ trððx2

mþ1

þ y2 a2 ¼ trðx þy

y2 þ x2 y2

mþ1

2mþ1

þ1

þ ya2

2

ðy a þ y

2mþ1 3

mþ1

mþ1

þ2

a

mþ1

þ2

mþ1

Þa þ ðx2

y þ xy2

mþ1

þ y2

mþ1

þ1

mþ1

Þa2 þ y2

a3 þ ðxy2 þ x2 y þ y3 Þa2

Þ

22mþ1 2m

3 2mþ1

a þy a

þ y2

þ ya2 þ y2

2 2mþ1 þ1

þy a

2mþ2

þ ya

a2

mþ2

2mþ1 þ2

Þ:

þ y2

mþ2

a2

2mþ2

m

þ y2 a2

2mþ1

Þ þ y2

mþ1

þ2

a þ y2

mþ1

þ1 2

a

mþ1

Þ

271

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

In order to compute the nonlinearity of function Da f , we first calculate the Walsh coefficients of the derivative of f. In fact, here we compute the square of the Walsh coefficients of Da f .

X

W Da f ðbÞ2 ¼

X

ð1ÞgðxÞþgðzÞþtrððxþzÞbÞ ¼

x;z2F 2n

X

¼

x;y2F 2n

X

ð1ÞtrðL2 ðyÞ Þ

y2F 2n

ð1Þtrðx

2mþ1 L

X

ð1ÞgðxÞþgðxþyÞþtrðbyÞ ¼

ð1Þtrðx

2mþ1 L

1 ðyÞþL2 ðyÞÞ

x;y2F 2n

1 ðyÞÞ

;

x2F 2n

where

L1 ðyÞ ¼ y2 a þ y2 L2 ðyÞ ¼ y

2mþ1 þ2

2mþ1

m

2mþ2

a2 þ ya2 þ y2

aþy

2mþ1 þ1 2

a2

mþ2

2mþ1 3

a þy

mþ2

þ y2

3 2mþ1

a þy a

a2

2mþ2

m

þ y2 a2

2 2mþ1 þ1

þy a

2mþ1

;

2mþ1 þ2

þ ya

þ by:

By the well known fact that

X

2mþ1 L

ð1Þtrðx



1 ðyÞÞ

¼

2n ; L1 ðyÞ ¼ 0; 0;

x2F 2n

else;

we have that

W Da f ðbÞ2 ¼ 2n

X ð1ÞtrðL2 ðyÞÞ ; y2M

where M ¼ fy 2 F 2n jL1 ðyÞ ¼ 0g: It is easy to verify that L2 ðyÞ is a linear function over the set M and M is a vector space over F 2 . Let the dimension of M be k, then we have

W Da f ðbÞ2 ¼ 2nþk

or 0:

Hence we only need to calculate the dimension of M, that is, we only need to calculate the number of the solutions of the linear equation over F 2n ,

L1 ðxÞ ¼ x2 a þ x2 Let us denote y ¼ x 2

2m

2

2mþ1

m

a2 þ xa2 þ x2

2mþ2

a2

mþ2

þ x2

mþ2

a2

2mþ2

m

2mþ1

þ x2 a2

¼ 0:

ð4Þ

2m

and b ¼ a , then Eq. (4) becomes 4

2

x a þ x b þ xa þ x4 b þ y4 a4 þ ya2 ¼ 0:

ð5Þ

m

Raising both sides of Eq. (5) to the 2 power gives 2

4

2

y2 b þ y2 a þ yb þ y4 a4 þ x4 b þ xb ¼ 0:

ð6Þ

Adding Eq. (5) to Eq. (6) gets the following equation: 2

2

2

2

xa2 þ ya2 þ x2 a þ y2 a þ bx þ by þ b x þ b y ¼ 0:

ð7Þ

Squaring Eq. (7), we get the following equation: 2

2

4

4

x2 a4 þ y2 a4 þ x4 a2 þ y4 a2 þ b x4 þ b y4 þ b x2 þ b y2 ¼ 0:

ð8Þ

4

Eliminating the variable y from Eqs. (8) and (5) gives the following equation: 2

4

4

4

2

2

2

2

0 ¼ x2 a8 þ y2 a8 þ x4 a6 þ b x4 a4 þ b x2 a4 þ b y2 a4 þ xa4 þ ya4 þ x2 a3 þ b x4 a2 þ bx a2 þ b xa2 þ b ya2 þ b x2 a 6

3

þ b x4 þ b x2 :

ð9Þ

Eliminating the variable y4 from Eq. (8) and the equation that comes from squaring Eq. (9) gives the equation 4

4

2

8

8

4

6

0 ¼ x2 a20 þ y2 a20 þ b x2 a16 þ b y2 a16 þ x8 a14 þ b x8 a12 þ b x2 a12 þ b y2 a12 þ b x8 a10 þ x2 a10 þ y2 a10 þ b x8 a8 12

2

12

2

8

4

4

10

6

6

þ x4 a8 þ b x2 a8 þ b x2 a8 þ b y2 a8 þ b y2 a8 þ b x8 a6 þ b x2 a6 þ b y2 a6 þ b x8 a4 þ b x2 a4 þ b y2 a4 12

14

8

þ b x8 a2 þ b x8 þ b x4 :

ð10Þ

Eliminating the variable y2 from Eqs. (9) and (10) gives the equation 2

2

2

2

2

2

3

0 ¼ x4 a26 þ b x4 a24 þ xa24 þ ya24 þ x2 a23 þ x8 a22 þ bx a22 þ b xa22 þ b ya22 þ b x2 a21 þ b x8 a20 þ b x2 a20 4

20

þ b xa

4

þ b ya

9

20

4 2 19

þb x a

10

5 2 18

þb x a

6

18

þ b xa

10

6

þ b ya

18

6 2 17

þb x a

10

7 2 16

þb x a 11

8

16

þ b xa 2

8

þ b ya

16

8

þ b x2 a15

12

12

16 8 6

8

þ b x2 a14 þ b xa14 þ xa14 þ b ya14 þ ya14 þ b x2 a13 þ x2 a13 þ b x2 a12 þ bx a12 þ b xa12 þ b ya12 12 2 11

þb x a 8

16 4 10

þb x a 8

13 2 10

þb x a

18

9

14

10

þ b xa

þ b ya6 þ b x2 a5 þ b x8 a4 þ b x2 a4 :

14

þ b ya

10

14 2 9

18 4 8

15 2 8

þ b x a þ b x a þ b x a þ b x a þ b xa6 ð11Þ

272

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Eliminating the variable y2 from Eq. (10) and the equation that comes from squaring Eq. (11) gives the following equation: 2

16

8

10

32

16

32

2

4

0 ¼ a12 ða20 þ a10 þ b a8 þ b a4 þ b a2 þ b Þða32 þ b Þx16 þ a12 ða16 þ b Þða44 þ a14 þ b a12 þ b a12 þ b a10 6

8

10

12

14

2

8

4

32

16

20

þ b a8 þ b a6 þ b a4 þ b a2 þ b Þx8 þ a16 ða2 þ b Þða8 þ b Þða40 þ a20 þ b a16 þ b a8 þ b a4 þ b Þx4 ; 4

8

16

ð12Þ

4

which is an equation in x ; x , and x . Let x be replaced by x, and denote Eq. (12) as PðxÞ ¼ 0. Then PðxÞ ¼ 0 must be an equation in x; x2 , and x4 , that is, 2

16

8

10

32

16

32

2

4

0 ¼ a12 ða20 þ a10 þ b a8 þ b a4 þ b a2 þ b Þða32 þ b Þx4 þ a12 ða16 þ b Þða44 þ a14 þ b a12 þ b a12 þ b a10 6

8

10

12

14

2

8

4

32

16

20

þ b a8 þ b a6 þ b a4 þ b a2 þ b Þx2 þ a16 ða2 þ b Þða8 þ b Þða40 þ a20 þ b a16 þ b a8 þ b a4 þ b Þx:

ð13Þ

We consider the following two cases. Case 1 When PðxÞ does not equal the constant zero, the degree of PðxÞ must be either 4, or 2, or 1. This means that k 6 2, so we have

W Da f ðbÞ2 6 2nþ2 ; n

hence jW Da f ðbÞj 6 22þ1 . Therefore by Eq. (1) we have

nlðDa f Þ ¼ 2n1 

n 1 max jW Da f ðbÞj P 2n1  22 : 2 b2F 2n

2

16

8

10

32

Case 2. When PðxÞ equals the constant zero, we must have a12 ða20 þ a10 þ b a8 þ b a4 þ b a2 þ b Þða32 þ b Þ ¼ 0, that is, 32 3 2 3 2 a12 ða þ bÞ10 ða32 þ b Þð1 þ a5 þ a2 b þ a4 b þ a3 b Þ2 ¼ 0. Therefore, we have a ¼ b or 1 þ a5 þ a2 b þ a4 b þ a3 b ¼ 0. However, 5 2 3 4 3 2 it is easy to verify that 1 þ a þ a b þ a b þ a b –0. Otherwise, we have the system of the two equations 3 2 5 2 4 3 1 þ a5 þ a2 b þ a4 b þ a3 b ¼ 0 and 1 þ b þ b a3 þ b a þ b a2 ¼ 0. Eliminating a from the above the system gives the contradiction 1 ¼ 0. Therefore we obtain a ¼ b. In this case, Eq. (5) becomes the equation ðx þ yÞ þ ðx þ yÞ4 a2 ¼ 0, that is, m mþ2 ¼ 0 whose number of the solutions is at most 2mþ2 . Hence k 6 m þ 2 and x þ a2 x4 þ x2 þ a2 x2

W Da f ðbÞ2 6 2nþmþ2 ; nþm þ1 2

hence jW Da f ðbÞj 6 2

. Therefore by Eq. (1) we have

nþm 1 nlðDa f Þ ¼ 2n1  max jW Da f ðbÞj P 2n1  2 2 : 2 b2F 2n

Therefore Lemma 2 holds. h Theorem 1. Let f ðxÞ ¼ trðxd Þ, where d ¼ 2mþ1 þ 3 and n ¼ 2m. Then we have

nl2 ðf Þ P 22m1 

1 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 5m 3m 2 2 þ1 þ 23mþ1  22m  2 2 þ1 :

Proof. By Lemmas 1 and 2, we get the following:

nl2 ðf Þ P 2n1 

1 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ffi X nþm n 1 22n  2ð2m  1Þð2n1  2 2 Þ  2ð2n  2m Þð2n1  22 Þ nlðDa f Þ P 2n1  22n  2 2 n a2F 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 5m 3m 1 ¼ 22m1  2 2 þ1 þ 23mþ1  22m  2 2 þ1 : 2 Hence the conclusion of the theorem follows. h When n ¼ 4, the above lower bound gives nl2 ðf Þ P 2, while the exact value of the second order nonlinearity of f is 2. This means that the lower bound in Theorem 1 is tight. When n ¼ 6, the above lower bound gives nl2 ðf Þ P 17, and the exact value of the second order nonlinearity of f is 20. In this case the lower bound is close. 3.2. When d ¼ 2m þ 2

mþ1 2

þ 1, n ¼ 2m and m is odd

Lemma 3. Any derivative, in a nonzero direction, of the function f ðxÞ ¼ trðxd Þ, has nonlinearity satisfying

( nlðDa f Þ P m

22m1  2m ; 2

mþ1 2

where d ¼ 2 þ 2

2m1

if a R F 2m ;

3m 2

 2 ; if a 2 F 2m ;

þ 1, n ¼ 2m and m is odd.

273

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Proof. Let r ¼ mþ1 , then we have m ¼ 2r  1, n ¼ 4r  2, and d ¼ 22r1 þ 2r þ 1. Since f ðxÞ ¼ trðx2 2

Da f ðxÞ ¼ f ðx þ aÞ þ f ðxÞ ¼ trððx þ aÞ2 ¼ trððx ¼ trðx

2

2r1

þ2

22r1 þ2r

r

þx

2

aþx

2r1

2

r

m

r

2

mþ1 þ2 2 þ1

2

a þx a

22r1 þ1 2r

a þx

2r1

Þ þ trðx2 22r1 þ2r

þa

22r1 2r þ1

a

þx

m

mþ1 þ2 2 þ1

2r1

2r

a

þ2

mþ1 2 þ1

Þ, we have

Þ

Þðx þ aÞ þ x2

2r þ1 22r1

m

þ2r þ1

22r1 þ1

þx a

Þ

þ xa2

2r1

þ2r

þ a2

2r1

þ2r þ1

Þ:

Write gðxÞ ¼ Da f ðxÞ, then we have

gðxÞ þ gðx þ yÞ ¼ trððx2 þ y2 ¼ trðx

2r1

2r1

2r1

r

þ y2

r

2r1

þ2r

Þa þ ðx2

r

r

23r2 2r1

2r

þ ya þ ya

22r1 þ1 2r

22r1 2r þ1

2r

ðy a þ y

22r1 þ2r

2r

r

2r1

2r1

a2 þ1 þ ðxy2 þ x2 y þ y2 þ1 Þa2

22r1

þ ðy

r

y2 þ x2 y2

aþy

22r1 þ1

þy a

a

a þy

22r1 þ2r

þ ya

r

2r1

þ y2 a 2

23r1

a

2r1

y þ xy2 23r1

þy

þ1

þ y2

2r1

þ ya2

þ1

2r1

þ2r

2r1 23r2

aþy

a

Þa2

r

Þ

Þ

2r þ1 22r1

þy

a

ÞÞ:

Now we calculate the Walsh coefficients of the derivative of f. In fact, here we compute the square of the Walsh coefficients of Da f

X

W Da f ðbÞ2 ¼

x;z2F

X

¼

X

ð1ÞgðxÞþgðzÞþtrððxþzÞbÞ ¼

2n

ð1ÞgðxÞþgðxþyÞþtrðbyÞ ¼

x;y2F 2n

ð1ÞtrðL2 ðyÞ Þ

y2F 2n

X

ð1Þ

2r1 trðx2 L

X

ð1Þtrðx

22r1 L

1 ðyÞþL2 ðyÞÞ

x;y2F 2n

1 ðyÞÞ

;

x2F 2n

where r

3r2

L1 ðyÞ ¼ y2 a þ y2 L2 ðyÞ ¼ y

2r1

2

r

þ2

r1

r

a2

aþy

þ ya2 þ ya2

2r1

2

þ1 2

r

a þy

2

2r1

3r1

þ y2

r

2 þ1

a

3r1

a þ y2 a2

3r2

2r1

r1

2r

r

2 þ1 2

þy

a

;

þ y a2

2r1

þ1

þ ya2

2r1

þ2r

þ by:

By the well known fact that

X

22r1 L ðyÞÞ 1

ð1Þtrðx

 ¼

2n ; L1 ðyÞ ¼ 0; 0;

x2F 2n

else;

we have that

X ð1ÞtrðL2 ðyÞÞ ;

W Da f ðbÞ2 ¼ 2n

y2M

where M ¼ fy 2 F 2n jL1 ðyÞ ¼ 0g: It is easy to verify that L2 ðyÞ is a linear function over the set M and M is a vector space over F 2 . Let the dimension of M be k, then we have

W Da f ðbÞ2 ¼ 2nþk

or 0:

Hence we only need to calculate the dimension of M, that is, we only need to calculate the number of the solutions of the linear equation over the F 2n , r

L1 ðxÞ ¼ x2 a þ x2

3r2

a2

r

r1

r

3r1

þ xa2 þ xa2

r

r

þ x2 r

3r1

r1

a þ x2 a2 2

r

3r2

¼ 0:

ð14Þ

r

Let us denote y ¼ x2 , z ¼ y2 , s ¼ z2 and b ¼ a2 , c ¼ b , d ¼ c2 , then raising both sides of Eq. (14) to the 4 power becomes 2

4

2

y4 a4 þ sb þ x4 b þ x4 d þ s2 a4 þ y2 d ¼ 0:

ð15Þ

Raising both sides of Eq. (15) to the 2r1 power gives the following equation: 2

2

z2 b þ x2 c þ y2 c2 þ y2 a4 þ x4 b þ za2 ¼ 0:

ð16Þ

Raising both sides of Eq. (16) to the 2r power gives the equation 2

4

2

s2 c2 þ y2 d þ z2 d þ z2 b þ y4 c2 þ sb ¼ 0: Raising both sides of Eq. (17) to the 2 4

2

4

2

2

2

r1

ð17Þ

power gives the equation

x d þ za þ sa þ sc þ z d þ x c ¼ 0:

ð18Þ

274

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

In Eqs. (15)–(18), replacing y2 with y and x2 with x gives the following equations, respectively, 2

4

2

y2 a4 þ sb þ x2 b þ x2 d þ s2 a4 þ yd ¼ 0; 2 2

2

2 2

4

ð19Þ

2

z b þ xc þ yc þ ya þ x b þ za ¼ 0; 2

4

ð20Þ

2

s2 c2 þ yd þ z2 d þ z2 b þ y2 c2 þ sb ¼ 0

ð21Þ

x2 d þ za2 þ sa4 þ sc2 þ z2 d þ xc ¼ 0:

ð22Þ

and

Eliminating s2 from Eqs. (19) and (21) gives the following equation: 4

2

2

4

4

2

2

0 ¼ b z2 a4 þ d z2 a4 þ b sa4 þ dya þ b c2 x2 þ c2 d x2 þ b c2 s þ c2 dy:

ð23Þ

Eliminating s from Eqs. (22) and (23) gives the equation 4

2

8

2

4

2

2

2

4

2

2

2

2

0 ¼ b z2 a8 þ d z2 a8 þ dya þ b za6 þ b c2 x2 a4 þ c2 d x2 a4 þ b dx a4 þ b c2 z2 a4 þ c2 d z2 a4 þ b dz a4 þ b cxa4 2

4

2

2

2

2

2

2

þ b c2 za2 þ b c4 x2 þ c4 d x2 þ b c2 dx þ b c2 dz þ b c3 x þ c4 dy:

ð24Þ

Squaring Eq. (22) gives the equation 2

2

s2 a8 þ z2 a4 þ d x4 þ d z4 þ c4 s2 þ c2 x2 ¼ 0:

ð25Þ

Eliminating s2 from Eqs. (21) and (25) gives the equation 4

2

2

8

2

2

4

2

2

0 ¼ c2 y2 a8 þ b z2 a8 þ d z2 a8 þ b sa8 þ dya þ c2 z2 a4 þ c2 d x4 þ c2 d z4 þ c4 x2 þ c6 y2 þ b c4 z2 þ c4 d z2 þ b c4 s 4

þ c dy:

ð26Þ

Eliminating s from Eqs. (23) and (26) gives the equation 2

6

2

2

2

6

2

2

2

2

2

2

2

0 ¼ b c2 y2 a12 þ b c2 x2 a8 þ b c2 d x2 a8 þ b c4 y2 a8 þ b c2 z2 a8 þ b c2 z2 a8 þ b c2 d z2 a8 þ b c2 d x4 a4 þ b c2 d z4 a4 2

2

2

2

2

2

2

6

2

2

2

2

6

þ b c4 x2 a4 þ b c6 y2 a4 þ b c4 z2 a4 þ b c4 d x4 þ b c4 d z4 þ b c6 x2 þ b c6 x2 þ b c6 d x2 þ b c8 y2 þ b c6 z2 2 6 2 2

þb c d z :

ð27Þ

Eliminating z2 from Eqs. (20) and (24) gives the equation 4

2

4

2

6

2 2

2

4

4

4

2

2

6

0 ¼ b ya12 þ d ya12 þ b za10 þ d za10 þ b x2 a8 þ b d x2 a8 þ cd xa8 þ b cxa8 þ b za6 þ b c2 za6 þ c2 d za6 þ b dza 4 3

3 2

4

2

4

4 4

4 2

4 2

2 2

2

6 4 2

2 4 2 2

4 3

þ b c xa4 þ c d xa4 þ b cxa4 þ b cdxa þ b c ya4 þ c d ya4 þ b c za2 þ b c dza þ b c x þ b c d x þ b c x 2

þ b c3 dx:

ð28Þ

4

Eliminating z from Eq. (27) and the equation that comes from squaring Eq. (20) gives the equation 6

2

2

10

6

2

6

2

2

10

6

6

2

0 ¼ b c2 y2 a12 þ b c2 d y2 a12 þ b c2 x2 a8 þ b c2 d x2 a8 þ b c4 y2 a8 þ b c4 d y2 a8 þ b c2 z2 a8 þ b c2 z2 a8 þ b c2 d z2 a8 2

2

6

2

2

6

2

2

6

2

2

10

6

þ b c2 d z2 a8 þ b c4 x2 a4 þ b c4 d x2 a4 þ b c6 y2 a4 þ b c6 d y2 a4 þ b c4 z2 a4 þ b c4 d z2 a4 þ b c6 x2 þ b c6 x2 6 6 2 2

2 6 2 2

6 8 2

2 8 2 2

10 6 2

6 6 2 2

þb c d x þb c d x þb c y þb c d y þb c z þb c d z :

ð29Þ

Eliminating z2 from Eqs. (20) and (29) gives the equation 8

4

2

10

6

6

2

2

2

10

6

6

2

0 ¼ b c2 y2 a12 þ b c2 d y2 a12 þ b c2 ya12 þ b c2 ya12 þ b c2 d ya12 þ b c2 d ya12 þ b c2 za10 þ b c2 za10 þ b c2 d za10 2 2 2

þ b c d za

10

10 4

8 2 2 8

4 2 2 2 8

8 4 2 8

4 4 2 2 8

10 3

6 3

6 3 2

2

6

2

2

8

4

2

8

2 3 2

þ b c x a þ b c d x a þ b c y a þ b c d y a þ b c xa þ b c xa þ b c d xa þ b c d xa8 6

8

6

2

8

2

10

þ b c ya8 þ b c4 d ya8 þ b c4 za6 þ b c4 d za6 þ b c6 y2 a4 þ b c6 d y2 a4 þ b c5 xa4 þ b c5 d xa4 þ b c6 ya4 6

6

6 7 2

10 8

2

2

2

10

6

2

8

4

2

8

4

2

10

þ b c6 ya4 þ b c6 d ya4 þ b c6 d ya4 þ b c6 za2 þ b c6 d za2 þ b c6 x2 þ b c6 d x2 þ b c8 y2 þ b c8 d y2 þ b c7 x 6 8 2

þ b c d x þ b c y þ b c d y:

ð30Þ

Eliminating z2 from Eq. (20) and the equation that comes from squaring Eq. (28) gives the following equation: 10

2 4

8

4

8

4

10

2 4

4

8

4

0 ¼ b y2 a24 þ b d y2 a24 þ b ya24 þ d ya24 þ b za22 þ d za22 þ b x2 a20 þ b d x2 a20 þ cd xa20 þ b cxa20 þ c2 d ya20 8

14

6 4

2

4

10

8

8

4

4 2

8

þ b c2 ya20 þ b x4 a16 þ b d x4 a16 þ b c2 d x2 a16 þ b c2 x2 a16 þ b ya16 þ b c4 ya16 þ c4 d ya16 þ b d ya16 þ b za14 8 4

þ b c za 4

2

14

6

2

14

8

12

þ c d za

12

þ b cd xa

4 4

þ b cxa 10

4 2

14

8 6

12

þ b d za

þ b c ya 2

10 2 12

þb x a 6 4

þ c d ya

12

4

8

10 4 2 12

þb c x a 8 2

þ b c ya

12

4

2 4 4 2 12

þb c d x a 4 2 2

þ b c d ya 2

12

6 2 2 12

þb d x a 10 6 2 8

8 5

12

þ b c xa

2 6 4 2 8

5 4

12

þ c d xa 10

þ b c x a þ b c d x a þ b c2 x2 a8

8

4

6 8 4 4

10 6 2

2

10

6

2

þ b c2 d x2 a8 þ b c8 y2 a8 þ b c8 d y2 a8 þ b c4 ya8 þ b c4 d ya8 þ b c4 za6 þ b c4 d za6 þ b c4 x2 a4 þ b c4 d x2 a4 8 5

4 5 2

8 6

4 6 2

14 8 4

6 6 2 2

þ b c xa4 þ b c d xa4 þ b c ya4 þ b c d ya4 þ b c x þ b c d x þ b c x þ b c d x :

ð31Þ

275

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Because the following expressions are very lengthy, we only give main steps to calculate the number of the solutions of the equation, L1 ðxÞ ¼ 0. In fact, the following expressions can be verified by Mathematica 6.0 easily as what we did. Eliminating z from Eqs. (30) and (28) gives the equation E1 in x2 , y and y2 . Eliminating z from Eqs. (28) and (31) gives the equation E2 in x2 , x4 , y and y2 . Eliminating y2 from equation E1 and equation E2 gives the equation E3 in x2 , x4 and y. Eliminating y2 from equation E2 and the equation that comes from squaring equation E3 gives the equation E4 in x2 , x4 , x8 and y. Eliminating y from equation E3 and equation E4 gives the equation PðxÞ ¼ 0 in x2 , x4 and x8 . Let x2 be replaced by x in PðxÞ ¼ 0. Then PðxÞ ¼ 0 is an equation in x, x2 and x4 . Similar to Theorem 1, we consider two cases: when PðxÞ 0 and when PðxÞX0. When PðxÞ is not constant zero, the degree of PðxÞ must be either 4, or 2, or 1. This means that k 6 2, so we have

W Da f ðbÞ2 6 2nþ2 ; n

hence jW Da f ðbÞj 6 22þ1 . Therefore by Eq. (1) we have

nlðDa f Þ ¼ 2n1 

n 1 max jW Da f ðbÞj P 2n1  22 : 2 b2F 2n m

2r

2

When PðxÞ equals constant zero, we have a ¼ a2 . In this case, Eq. (15) becomes y4 a4 þ y2 b þ y2 ber of the solutions is at most 22rþ1 ¼ 2mþ2 . Hence k 6 m þ 2 and we have

2rþ1

a4 þ y2 d ¼ 0 whose num-

W Da f ðbÞ2 6 2nþmþ2 ; nþm þ1 2

hence jW Da f ðbÞj 6 2

nlðDa f Þ ¼ 2n1 

. Therefore by Eq. (1) we have

nþm 1 max jW Da f ðbÞj P 2n1  2 2 : 2 b2F 2n

and hence the conclusion of Lemma 3 follows. h mþ1 2

Theorem 2. Let f ðxÞ ¼ trðxd Þ, where d ¼ 2m þ 2

þ 1, n ¼ 2m and m is odd. Then we have

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 5m 3m 1 2 2 þ1 þ 23mþ1  22m  2 2 þ1 : nl2 ðf Þ P 22m1  2 Proof. By Lemmas 1 and 3, we have

nl2 ðf Þ P 2n1 

1 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ffi X nþm n 1 nlðDa f Þ P 2n1  22n  2 22n  2ð2m  1Þð2n1  2 2 Þ  2ð2n  2m Þð2n1  22 Þ 2 a2F n 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 5m 3m 2 2 þ1 þ 23mþ1  22m  2 2 þ1 :

1 ¼ 22m1  2



When n ¼ 6, the above lower bound gives nl2 ðf Þ P 17, while the exact value of the second order nonlinearity of f is 20. We have not been able to find a case when the lower bound is the same as the exact number, so we can only claim that the lower bound in Theorem 2 is close. 3.3. When d ¼ 22r þ 2rþ1 þ 1 and n ¼ 4r Lemma 4. Any derivative, in a nonzero direction, of the function f ðxÞ ¼ trðxd Þ, has nonlinearity satisfying

( nlðDa f Þ P

24r1  22rþ1 ; if a R F 22r ; 24r1  23r ;

ifa 2 F 22r ;

where d ¼ 22r þ 2rþ1 þ 1 and n ¼ 4r. 2r

Proof. Since f ðxÞ ¼ trðx2

þ2rþ1 þ1

Þ, we have

Da f ðxÞ ¼ f ðx þ aÞ þ f ðxÞ ¼ trððx þ aÞ2 ¼ trððx ¼ trðx

22r þ2rþ1

22r þ2rþ1

22r

2rþ1

þx a

aþx

þx

22r þ1 2rþ1

a

2r

þ2rþ1 þ1

2rþ1 22r

2r

Þ þ trðx2 22r þ2rþ1

a

þa

22r

2rþ1 þ1

þx a

þx

þ2rþ1 þ1

Þ

Þðx þ aÞ þ x2

2rþ1 þ1 22r

a

þx

2r

þ2rþ1 þ1

2rþ1 22r þ1

a

Þ

þ xa2

2r

þ2rþ1

þ a2

2r

þ2rþ1 þ1

Þ:

276

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Write gðxÞ ¼ Da f ðxÞ, then we have 2r

gðxÞ þ gðx þ yÞ ¼ trððx2 y2 þ y2

rþ1

þ1

22r

rþ1

rþ1

2r

2rþ1

rþ1

2r

rþ1

Þa2 þ y2 a2 aþy

¼ trðx ðy þ y2

2r

þ x2 y 2 þ y 2

þ1 22r

a

2r

a

rþ1

þ y2 a2

2r

þ ya2

þ1

23r1 2r1

þ2rþ1

2r

2r

2rþ1

þ ya

2r

þ ya2

þ1

2r

Þa þ ðx2 y þ xy2 þ y2 þ2rþ1

þ1

Þa2

rþ1

2r

þ y2 a2

rþ1

þ1

rþ1

rþ1

þ ðx2 y þ xy2

Þ

þ ya2

þ2rþ1

2r

3rþ1

r1

þ y2 a2

3r1

3rþ1

þ y2

aÞ þ ðy2

2r

þ2rþ1

a þ y2

2r

þ1 2rþ1

a

2r

þ y2 a2

rþ1

þ1

ÞÞ:

In order to compute the nonlinearity of function Da f , we first calculate the Walsh coefficients of the derivative of f. In fact, here we compute the square of the Walsh coefficients of Da f .

X

W Da f ðbÞ2 ¼

x;z2F

2n

X

¼

X

ð1ÞgðxÞþgðzÞþtrððxþzÞbÞ ¼

ð1ÞgðxÞþgðxþyÞþtrðbyÞ ¼

x;y2F 2n

ð1ÞtrðL2 ðyÞ Þ

y2F 2n

X

ð1Þtrðx

22r L

X

ð1Þtrðx

22r L

1 ðyÞþL2 ðyÞÞ

x;y2F 2n

1 ðyÞÞ

;

x2F 2n

where

L1 ðyÞ ¼ y2

rþ1

a þ y2

22r þ2rþ1

L2 ðyÞ ¼ y

3r1

a2

r1

rþ1

þ ya2

22r þ1 2rþ1

aþy

a

þ ya2

22r

3rþ1

2rþ1 þ1

þy a

þ y2

r1

3r1

a2

2rþ1 þ1 22r

þy

a

þ y2

3rþ1

a;

2rþ1 22r þ1

þy

þ ya2

a

2r

þ2rþ1

þ by:

By the well known fact that

X

22r L

ð1Þtrðx



1 ðyÞÞ

¼

2n ; L1 ðyÞ ¼ 0; 0;

x2F 2n

else;

we have that

W Da f ðbÞ2 ¼ 2n

X ð1ÞtrðL2 ðyÞÞ ; y2M

where M ¼ fy 2 F 2n jL1 ðyÞ ¼ 0g: It is easy to verify that L2 ðyÞ is a linear function over the set M and M is a vector space over F 2 . Let the dimension of M be k, then we have

W Da f ðbÞ2 ¼ 2nþk

or 0:

Hence we only need to calculate the dimension of M, that is, we only need to calculate the number of the solutions of the linear equation over the F 2n , rþ1

3r1

L1 ðxÞ ¼ x2 a þ x2 2r

a2

r1

rþ1

2r

2r

Let us denote y ¼ x , z ¼ y , s ¼ z 4

4 2

4

3rþ1

þ xa2

þ xa2

r1

3r1

þ x2 a 2

þ x2

2r

2r

3rþ1

a ¼ 0:

ð32Þ

2r

and b ¼ a , c ¼ b , d ¼ c , then squaring Eq. (32) becomes the equation

2

y a þ sb þ ðb þ d Þx þ yd þ s4 a2 ¼ 0:

ð33Þ

r

Raising both sides of Eq. (33) to the 2 power gives the equation 2

2

z4 b þ xc þ ðc4 þ a4 Þy2 þ za þ x4 b ¼ 0:

ð34Þ

r

Raising both sides of Eq. (34) to the 2 power gives the equation 4

4

s4 c2 þ yd þ ðd þ b Þz2 þ sb þ y4 c2 ¼ 0:

ð35Þ

r

Raising both sides of Eq. (35) to the 2 power gives the equation 2

2

x4 d þ za þ ða4 þ c4 Þs2 þ xc þ z4 d ¼ 0:

ð36Þ

4

Eliminating s from Eqs. (33) and (35) gives the following equation: 4

4

4

4

c2 x2 b þ a2 z2 b þ a2 sb þ c2 sb þ c2 d x2 þ a2 d z2 þ a2 dy þ c2 dy ¼ 0:

ð37Þ

Squaring Eq. (37) gives the equation 8

8

2

2

8

8

2

2

c4 x4 b þ a4 z4 b þ a4 s2 b þ c4 s2 b þ c4 d x4 þ a4 d z4 þ a4 d y2 þ c4 d y2 ¼ 0:

ð38Þ

Eliminating s2 from Eqs. (36) and (38) gives the equation 8

8

2

2

8

8

2 2

8

8

2 2

0 ¼ b z4 a8 þ d z4 a8 þ d y2 a8 þ b za5 þ c4 d x4 a4 þ b c4 x4 a4 þ b d x4 a4 þ c4 d z4 a4 þ b c4 z4 a4 þ b d z4 a4 2

2

8

8

2

2

2

2

2

2

þ b cxa4 þ b c4 za þ b c8 x4 þ c8 d x4 þ b c4 d x4 þ b c4 d z4 þ c8 d y2 þ b c5 x:

ð39Þ

277

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Squaring Eq. (36) gives the equation 4

4

s4 a8 þ z2 a2 þ d x8 þ d z8 þ c8 s4 þ c2 x2 ¼ 0:

ð40Þ

4

Eliminating s from Eqs. (35) and (40) gives the equation 4

4

8

8

4

4

4

4

0 ¼ y4 c10 þ b z2 c8 þ d z2 c8 þ bsc þ dyc þ x2 c4 þ d x8 c2 þ d z8 c2 þ a8 y4 c2 þ a2 z2 c2 þ a8 b z2 þ a8 d z2 þ a8 bs þ a8 dy:

ð41Þ

Eliminating s from Eqs. (37) and (41) gives the equation 4

4

5

4

5

4

2

4

4

4

0 ¼ by c12 þ a2 by c10 þ b x2 c10 þ bd x2 c10 þ b z2 c10 þ bd z2 c10 þ bx c6 þ bd x8 c4 þ bd z8 c4 þ a8 by c4 2

2

4

4

4

5

4

5

4

þ a2 bx c4 þ a2 bz c4 þ a2 bd x8 c2 þ a2 bd z8 c2 þ a10 by c2 þ a8 b x2 c2 þ a8 bd x2 c2 þ a8 b z2 c2 þ a8 bd z2 c2 2

þ a4 bz c2 :

ð42Þ

Eliminating z4 from Eqs. (34) and (39) gives the equation 8

8

8

8

10

2 8

8

8

2

4

8

4

8

0 ¼ b y2 a12 þ d y2 a12 þ b za9 þ d za9 þ b x4 a8 þ b d x4 a8 þ cd xa8 þ b cxa8 þ c4 d za5 þ b za5 þ b c4 za5 2 2

8

8

8

8

2

4

2

2

10

þ b d za5 þ b c8 y2 a4 þ c8 d y2 a4 þ c5 d xa4 þ b c5 xa4 þ b cd xa4 þ b cxa4 þ b c4 za þ b c4 d za þ b c8 x4 2

8

4

2

2

þ b c8 d x4 þ b c5 x þ b c5 d x:

ð43Þ

Because the following expressions are very lengthy, we only give main steps to calculate the number of the solutions of the equation, L1 ðxÞ ¼ 0. As in the case of Lemma 3, the following expressions have been verified using Mathematica 6.0. Eliminating z8 from Eq. (42) and the equation that comes from squaring Eq. (39) gives the equation E1 in x2 , x8 , y4 and z2 . Eliminating z4 from Eq. (39) and the equation that comes from raising the both sides of the Eq. (43) to the 4 power gives the equation E2 in x, x4 , x16 , y2 , y8 and z. Eliminating z2 from equation E1 and the equation that comes from squaring Eq. (43) gives the equation E3 in x2 , x8 and y4 . Eliminating z from equation E2 and Eq. (43) gives the equation E4 in x, x4 , x16 , y2 and y8 . Eliminating y8 from equation E4 and the equation that comes from squaring equation E3 gives the equation E5 in x, x4 , x16 and y2 . Eliminating y4 from Equation E3 and the equation coming from squaring equation E5 gives the equation PðxÞ ¼ 0 in x2 , x8 and x32 . Let x2 be replaced by x in PðxÞ ¼ 0, then PðxÞ is an equation in x, x4 and x16 . When PðxÞ is not equal to the constant zero, the degree of PðxÞ must be either 16, or 4, or 1. This means that k 6 4, so we have

W Da f ðbÞ2 6 2nþ4 ; n

hence jW Da f ðbÞj 6 22þ2 . Therefore by Eq. (1) we have

nlðDa f Þ ¼ 2n1 

n 1 max jW Da f ðbÞj P 2n1  22þ1 : 2 b2F 2n

When PðxÞ equals to constant zero, we have b ¼ d, that is, a 2 F 22r . In this case, Eq. (33) becomes 2r 2rþ2 yd þ y4 a2 þ y2 b þ y2 a2 ¼ 0 whose number of the solutions is at most 22rþ2 . Hence k 6 2r þ 2 and we have

W Da f ðbÞ2 6 2nþ2rþ2 ; hence jW Da f ðbÞj 6 23rþ1 . By Eq. (1) we have

nlðDa f Þ ¼ 2n1 

1 max jW Da f ðbÞj P 2n1  23r : 2 b2F 2n

Hence the conclusion of Lemma 4 follows. h Theorem 3. Let f ðxÞ ¼ trðxd Þ, where d ¼ 22r þ 2rþ1 þ 1 and n ¼ 4r. Then we have

nl2 ðf Þ P 24r1 

1 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 25rþ1 þ 26rþ2  23rþ1  3 24r :

Proof. By Lemmas 1 and 4, we have

nl2 ðf Þ P 2n1 

1 2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi sffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi ffi X n 1 22n  2ð22r  1Þð2n1  23r Þ  2ð2n  22r Þð2n1  22þ1 Þ nlðDa f Þ P 2n1  22n  2 2 a2F n 2

¼2

4r1

1  2

qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi 25rþ1 þ 26rþ2  23rþ1  3 24r :



278

G. Sun, C. Wu / Information Sciences 179 (2009) 267–278

Obviously, when n ¼ 4, the algebraic degree of the functions defined in Theorem 3 is 2, so their second order nonlinearity is 0. In this case, our lower bound is also 0 and hence the lower bound is tight when n ¼ 4. 4. Concluding remarks In the paper, we deduced the lower bounds of the second order nonlinearity of three classes of Boolean functions by studying the lower bound of the nonlinearity of the derivative of the functions. The results show that second order nonlinearity of these three classes of Boolean functions is also high, given that their nonlinearity is known to be high as well. It is seen from the following table that our lower bounds are better than those of Iwata–Kurosawa. It is noted that, since the algebraic degree of our considered functions is 3, the algebraic immunity hence is at most 3. In this case, the lower bounds cannot be obtained by the relation between algebraic immunity and the rth order nonlinearity as studied in [6,4]. n

4

6

8

10

12

14

16

18

20

Iwata–Kurosawa’s bounds Bounds of Theorems 1, 2 Bound of Theorem 3

N/A 2 0

14 17 N/A

56 84 62

224 386 N/A

896 1689 1525

3584 7172 N/A

14,336 29,877 28,615

57,344 122,888 N/A

229,376 501,129 491,277

It is noted that our results come from heavy computation on individual cases. We attempted to simplify the process and it was difficult. It leaves as an open problem as whether there is a general method to deduce the lower bounds of rth order nonlinearity of more classes of Boolean functions. Acknowledgment The authors would like to thank the anonymous referees for their valuable comments that improved the paper. References [1] L. Budaghyan, C. Carlet, G. Leander, A class of quadratic APN binomials inequivalent to power functions. Available at . [2] L. Budaghyan, C. Carlet, G. Leander, Another class of quadratic APN binomials over F 2n : the case n divisible by 4. Available at: . [3] A. Canteaut, M. Trabbia, Improved fast correlation attacks using parity-check equations of weight 4 and 5, in: Advances in Cryptology – Eurocrypt 2000, LNCS, vol. 1807, Springer-Verlag, 2000, pp. 573–588. [4] C. Carlet, On the higher order nonlinearities of algebraic immune functions, in: Advances in Cryptology – CRYPTO 2006, LNCS, vol. 4117, SpringerVerlag, 2006, pp. 584–601. [5] C. Carlet, Recursive lower bounds on the nonlinearity profile of Boolean functions and their applications, IEEE Trans. Inform. Theory 54 (3) (2008) 1262–1272. [6] C. Carlet, D. Dalai, K. Gupta, S. Maitra, Algebraic immunity for cryptographically significant Boolean functions: analysis and construction, IEEE Trans. Inform. Theory 52 (7) (2006) 3105–3121. [7] C. Carlet, S. Mesnager, Improving the upper bounds on the covering radii of binary Reed–Muller codes, IEEE Trans. Inform. Theory 53 (1) (2007) 162– 173. [8] F. Chabaud, S. Vaudenay, Links between differential and linear cryptanalysis, in: Advances in Cryptology – EUROCRYPT’94, LNCS, vol. 950, SpringerVerlag, 1995, pp. 356–365. [9] G. Cohen, I. Honkala, S. Litsyn, A. Lobstein, Covering Codes, North-Holland, Amsterdam, The Netherlands, 1977. [10] T.W. Cusick, H. Dobbertin, Some new three-valued crosscorrelation functions for binary m-sequences, IEEE Trans. Inform. Theory 42 (4) (1996) 1238– 1240. [11] C. Ding, G. Xiao, W. Shan, in: The Stability Theory of Stream Ciphers, LNCS, vol. 561, Springer-Verlag, 1991. [12] H. Dobbertin, Almost perfect nonlinear power functions on GFð2n Þ: a new case for n divisible by 5, in: Finite Fields and Applications (Augsburg, 1999), Springer-Verlag, Berlin, Germany, 2001, pp. 113–121. [13] H. Dobbertin, Uniformly representable permutation polynomials, in: T. Helleseth, P.V. Kumar, K. Yang (Eds.), The Proceedings of Sequences and Their Applications - SETA01, Springer, London, 2002, pp. 1–22. [14] H. Dobbertin, G. Leander, A. Canteaut, C. Carlet, P. Felke, P. Gaborit, Construction of bent functions via Niho power functions, J. Comb. Theory, Ser. A 113 (2006) 779–798. [15] I. Dumer, G. Kabatiansky, C. Tavernier, List decoding of Reed–Muller codes up to the Johnson bound with almost linear complexity, in: Proceedings of the IEEE International Symposium on Information Theory, Seattle, WA, July 2006, pp. 138–142. [16] R. Fourquet, C. Tavernier, List decoding of second order Reed–Muller and its covering radius implications, in: Proceedings of the WCC 2007, Versailles, France, April 2007, pp. 147–156. [17] T. Iwata, K. Kurosawa, Probabilistic higher order differential attack and higher order bent functions, in: Proceedings of the ASIACRYPT’99, LNCS, vol. 1716, Springer-Verlag, Berlin, Germany, 1999, pp. 62–74. [18] G. Kabatiansky, C. Tavernier, List decoding of second order Reed–Muller codes, in: Proceedings of the eighth International Symposium on Communication Theory and Applications, Ambelside, UK, July 2005. [19] G. Leander, Monomial bent functions, IEEE Trans. Inform. Theory 52 (2) (2006) 738–743. [20] R. Lidl, H. Niederreiter, Finite Fields, Addison-Wesley, 1983.