IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 1 Constructions of Almost Optimal Resilient Boolean Functions on Large Even Number of Variables Wei-Guo Zhang, Member, IEEE, and Guo-Zhen Xiao Abstract—In this paper, a technique on constructing nonlinear resilient Boolean functions is described. By using several sets of disjoint spectra functions on a small number of variables, an almost optimal resilient function on a large even number of variables can be constructed. It is shown that given any m, one can construct infinitely many n-variable (n even), m-resilient functions with nonlinearity > 2n−1 −2n/2 . A large class of highly nonlinear resilient functions which were not known are obtained. Then one method to optimize the degree of the constructed functions is proposed. Last, an improved version of the main construction is given. 2) Index Terms—Algebraic degree, Boolean function, disjoint spectra functions, nonlinearity, resiliency, stream cipher. I. I NTRODUCTION Boolean functions are used as nonlinear combiners or nonlinear filters in certain models of stream cipher systems. In the design of cryptographic Boolean functions, there is a need to consider a multiple number of criteria simultaneously. The widely accepted criteria are balancedness, high nonlinearity, high algebraic degree, and correlation immunity of high order (for balanced functions, correlation immunity is referred to as resiliency). By an (n, m, d, Nf ) function we mean an n-variable, mresilient (order of resiliency m) Boolean function f with algebraic degree d and nonlinearity Nf . Unfortunately, all the criteria above cannot be maximized together. For n even, the most notable example is perhaps bent functions [19]. Achieving optimal nonlinearity 2n−1 −2n/2−1 , bent functions permit to resist linear attacks in the best possible way. But they are improper for cryptographic use because they are neither balanced nor correlation-immune and their algebraic degrees are not more than n/2. When concerning the order of resiliency, Siegenthaler [28] and Xiao [31] proved that d ≤ n − m − 1 for m-reslient Boolean functions. Such a function, reaching this bound, is called degree-optimized. For the reasons above, it is more important to construct those degree-optimized resilient Boolean functions which have almost optimal (large but not optimal) nonlinearity, say between 2n−1 − 2n/2 and 2n−1 − 2n/2−1 , when n is even. This is also what we do in this paper. We now give a summary of earlier results that are related to our work. 1) To obtain nonlinear resilient functions, a modification of the Maiorana-McFarland (M-M) construction The authors are with the ISN Laboratory, Xidian University, Xi’an 710071, China (e-mail: [email protected]). Digital Object Identifier 10.1109/TIT.2009.2032736 3) 4) 5) 6) of bent functions (cf. [5]) by concatenating the small affine functions was first employed by Camion et al [1] and later studied in [27], [3], [21]. The nonlinearity of n-variable M-M resilient functions cannot exceed 2n−1 −2⌊n/2⌋ . The M-M technique in general does not generate degree-optimized functions and the M-M functions are potentially cryptographically weak [2], [9]. An interesting extension of the M-M technique has been made by Carlet [2], where the concatenation of affine functions is replaced by concatenation of quadratic functions. In general, these constructed functions can not be degree-optimized, and the other parameters such as nonlinearity and resiliency are not better than those of the M-M functions. Pasalic [17] presented a revised version of the MM technique to obtain degree-optimized resilient functions. The modification is simple and smart but the nonlinearity value of the constructed functions is at most 2n−1 − 2⌊n/2⌋ . Sarkar and Maitra [21] indicated that for each order of resiliency m, it is possible to find an even positive integer n to construct an (n, m, n − m − 1, Nf ) function f with Nf > 2n−1 − 2n/2 . They showed that for even n ≥ 12, the nonlinearity of 1-resilient functions with maximum possible algebraic degree n−2 can reach 2n−1 −2n/2−1 −2n/2−2 −2n/4−2 −4. It was further improved due to the method proposed by Maitra and Pasalic [12]. Thanks to the existence of the (8, 1, 6, 116) functions, an (n, 1, n − 2, Nf ) function f with Nf = 2n−1 − 2n/2−1 − 2n/2−2 − 4 could be obtained, where n ≥ 10. Seberry et al. [26] and Dobbertin [6] independently presented constructions of highly nonlinear balanced Boolean functions by modifying the M-M bent functions. To obtain an n-variable balanced function, they concatenated 2n/2 −1 nonconstant distinct n/2variable linear functions and one n/2-variable modified M-M class highly nonlinear balanced Boolean function which can be constructed in a recursive manner. These constructed functions attain the best known nonlinearity for n-variable (n even) balanced functions. Unfortunately, these functions are not 1resilient functions. To obtain m-resilient functions with nonlinearity > 2n−1 − 2n/2−1 − 2n/2−2 for n even and n ≥ 14, Maitra and Pasalic [11] applied the concatenation of 2n/2 −2k distinct linear m-resilient functions on n/2 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 7) 8) variables together with a highly nonlinear resilient function on n/2 + k variables. Moreover, they have provided a generalized construction method for mresilient functions with nonlinearity 2n−1 −2n/2−1 − 2n/2−3 − 2n/2−4 for all n ≥ 8m + 6. For sufficiently large n, it is possible to get such functions with nonlinearity ≈ 2n−1 − 2n/2−1 − 23 2n/2−2 . And it is the upper bound on maximum possible nonlinearity under their construction method. Computer search techniques have played an important role in the design of cryptographic Boolean functions in the last ten years [14], [16], [15], [4]. For a small number of variables, Boolean functions with good cryptographic parameters could be found by using heuristic search techniques [12], [20], [8]. However, search techniques cannot be used for functions with a large number of variables at present. During the past decade, the most infusive results on the design of cryptographic Boolean functions were centered on finding small functions with desirable cryptographic properties. When it comes to constructing large functions, people used recursive constructions [29], [30], [7] besides the M-M construction and its revised (extended) versions. With the rapid development of integrated circuit technique, Boolean functions with large number of variables can be easily implemented in hardware [22]. In this paper we propose a technique to construct high nonlinear resilient Boolean functions on large even number of variables (n ≥ 12). We obtain a large class of resilient Boolean functions with a nonlinearity higher than that attainable by any previously known construction method. The organization of this paper is as follows. In Section II, the basic concepts and notations are presented. In Section III, we present a method to construct a set of “disjoint spectra functions” by using a class of “partially linear functions”. Our main construction is given in Section IV. A method for constructing resilient functions on large even number of input variables is proposed. We show that all the constructed functions are almost optimal. In Section V, the degrees of the constructed functions are optimized. In Section VI, an improved version of the main construction is given. Finally, Section VII concludes the paper with an open problem. II. P RELIMINARIES To avoid confusion with the additions of integers in R, denoted⊕ by + and Σi , we denote the additions over F2 by ⊕ and i . For simplicity, we denote by + the addition of vectors of Fn2 . A Boolean function of n variables is a function from Fn2 into F2 , and we denote by Bn the set of all Boolean functions of n variables. A Boolean function f (Xn ) ∈ Bn , where Xn = (x1 , · · · , xn ) ∈ Fn2 , is generally represented by its algebraic normal form (ANF) f (Xn ) = ⊕ u∈Fn 2 λu ( n ∏ i=1 xui i ) (1) 2 where λu ∈ F2 and u = (u1 , · · · , un ). The algebraic degree of f (Xn ), denoted by deg(f ), is the maximal value of wt(u) such that λu ̸= 0, where wt(u) denotes the Hamming weight of u. A Boolean function with deg(f ) ≤ 1 is said to be affine. In particular, an affine function with constant term equal to zero is called a linear function. Any linear function on Fn2 is denoted by ω · Xn = ω1 x1 ⊕ · · · ⊕ ωn xn where ω = (ω1 , · · · , ωn ) ∈ Fn2 . The Walsh spectrum of f ∈ Bn in point ω is denoted by Wf (ω) and calculated by ∑ Wf (ω) = (−1)f (Xn )⊕ω·Xn . (2) Xn ∈Fn 2 f ∈ Bn is said to be balanced if its output column in the truth table contains equal number of 0’s and 1’s (i.e. Wf (0) = 0). In [31], a spectral characterization of resilient functions has been presented. Lemma 1: An n-variable Boolean function is m-resilient if and only if its Walsh transform satisfies Wf (ω) = 0, for 0 ≤ wt(ω) ≤ m, ω ∈ Fn2 . (3) The Hamming distance between two n-variable Boolean functions f and ρ is denoted by d(f, ρ) = |{Xn ∈ Fn2 : f (Xn ) ̸= ρ(Xn )}|. The set of all affine functions on Fn2 is denoted by A(n). The nonlinearity of a Boolean function f ∈ Bn is its distance to the set of all affine functions and is defined as Nf = min (d(f, ρ)). ρ∈A(n) In term of Walsh spectra, the nonlinearity of f is given by [13] 1 Nf = 2n−1 − · maxn |Wf (ω)|. (4) 2 ω∈F2 Parseval’s equation [10] states that ∑ (Wf (ω))2 = 22n (5) ω∈Fn 2 and implies that Nf ≤ 2n−1 − 2n/2−1 . The equality occurs if and only if f ∈ Bn are bent functions, where n is even. Bent functions can be constructed by the M-M method. The original M-M functions are defined as follows: for any positive integers p, q such that n = p+q, an M-M function is a function f ∈ Bn defined by f (Yq , Xp ) = ϕ(Yq ) · Xp ⊕ π(Yq ), Xp ∈ Fp2 , Yq ∈ Fq2 (6) where ϕ is any mapping from Fq2 to Fp2 and π ∈ Bq . When n is even, p=q=n/2, and ϕ is injective, the M-M functions are bent. Certain choices of ϕ can easily yield bent functions with degree n/2. For the case of n = 2, f ∈ B2 is bent if and only if deg(f ) = 2. The M-M construction is in essence a concatenation of affine functions. The following definition shows a more general approach to obtain a “large” Boolean function by concatenating the truth tables of any small Boolean functions. IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 Definition 1: Let Yq ∈ Fq2 , Xp ∈ Fp2 , and p, q be positive numbers with p + q = n. f ∈ Bn is called a concatenation of the functions in the set G = {gb | b ∈ Fq2 } ⊂ Bp if ⊕ f (Yq , Xp ) = Yqb · gb (Xp ), (7) b∈Fq2 2n−1 − 2n/2 ≤ Nf < 2n−1 − 2n/2−1 . = (8) (9) III. A L ARGE S ET OF D ISJOINT S PECTRA F UNCTIONS Disjoint spectra functions will play an important role in constructing almost optimal resilient functions in this paper. Definition 3: A set of Boolean functions {g1 , g2 , · · · , ge } ⊂ Bp such that for any α ∈ Fp2 , Wgi (α) · Wgj (α) = 0, 1 ≤ i < j ≤ e (10) is called a set of disjoint spectra functions. The idea that two Boolean functions with disjoint spectra can be used to construct highly nonlinear resilient functions was clearly mentioned in [18], and it was also used in [29], [7], [12]. In this section, we provide a simple construction method for a large set of disjoint spectra functions by using a set of “partially linear” functions. As a family of special resilient functions, partially linear functions were firstly considered by Siegenthaler [28]. Here is the definition of such functions. Definition 4: Let t be a positive integer and {i1 , · · · , it } ∪ {it+1 , · · · , ip } = {1, · · · , p}. Let Xp = (x1 , · · · , xp ) ∈ Fp2 , ′′ Xt′ = (xi1 , · · · , xit ) ∈ Ft2 and Xp−t = (xit+1 , · · · , xip ) ∈ p−t t F2 . For any c ∈ F2 , gc ∈ Bp is called a tth-order partially linear function if gc (Xp ) = c · ⊕ ′′ hc (Xp−t ) (11) where hc ∈ Bp−t . Now we use partially linear functions to construct a set of disjoint spectra functions. Lemma 3: With the same notation as in Definition 4, a set of tth-order partially linear functions ′′ T = {gc (Xp ) = c · Xt′ ⊕ hc (Xp−t ) | c ∈ Ft2 } is a set of disjoint spectra functions. Xp ∈Fp 2 ∑ ′ ′′ (12) ∑ = ∑ ′ (−1)(c+δ)·Xt Xt′ ∈Ft2 ′′ (−1)(c+δ)·Xt ⊕(hc (Xp−t )⊕θ·Xp−t ) Xp ∈Fp 2 Theorem 2 in [28] allows us to verify that the following lemma is true. Lemma 2: With the same notation as in Definition 1, if all the functions in G are m-resilient functions, then f is an mresilient function. From now on, we will focus on highly nonlinear resilient Boolean functions with an even number of variables in the following sense. Definition 2: Let n ≥ 4 be even. f ∈ Bn is said to be almost optimal if Xt′ Proof: Let α = (δ, θ) ∈ Fp2 , where δ ∈ Ft2 and θ ∈ Fp−t 2 . For any gc ∈ T , ∑ ′ ′′ Wgc (α) = (−1)c·Xt ⊕hc (Xp−t )⊕α·Xp = where the notation Yqb is defined by { 1 if Yq = b Yqb = 0 if Yq ̸= b. 3 ∑ ′′ ′′ (−1)(hc (Xp−t )⊕θ·Xp−t ) ′′ ∈Fp−t Xp−t 2 ′ (−1)(c+δ)·Xt · Whc (θ) (13) Xt′ ∈Ft2 We have { 0 2t · Whc (θ) Wgc (α) = if c ̸= δ if c = δ. (14) For any gc′ ∈ T , c′ ̸= c, we have Wgc (α) · Wgc′ (α) = 0. According to Definition 3, T is a set of disjoint spectra functions. Disjoint spectra functions (partially linear functions) will be used as the “components” to construct almost optimal resilient Boolean functions in this paper. Open Problem: Construct a large set of disjoint spectra functions which are not (linearly equivalent to) partially linear functions. IV. M AIN C ONSTRUCTION This section presents a method for constructing resilient Boolean functions with very high nonlinearity. The algebraic degrees of the functions are also given. Construction 1: Let n ≥ 12 be an even number, m be a positive number, and (a1 , · · · , as ) ∈ Fs2 such that ) ∑ ) n/2 ( n/2−2k ( s ∑ ∑ n/2 n/2 − 2k a k · + ≥ 2n/2 j j j=m+1 j=m+1 k=1 (15) where s = ⌊(n − 2m − 2)/4⌋. Let Xn/2 = (x1 , · · · , xn/2 ) ∈ n/2 ′′ = (xt+1 , · · · , xn/2 ) F2 , Xt′ = (x1 , · · · , xt ) ∈ Ft2 , and X2k 2k ∈ F2 with t + 2k = n/2. Let n/2 Γ0 = {c · Xn/2 | c ∈ F2 , wt(c) > m}. (16) For 1 ≤ k ≤ s, let Hk be a nonempty set of 2k-variable bent functions with algebraic degree max(k, 2) and ′′ Γk = {c · Xt′ ⊕ hc (X2k ) | c ∈ Ft2 , wt(c) > m} (17) where hc ∈ Hk . Set Γ= s ∪ Γk . (18) k=0 n/2 Denote by ϕ any injective mapping from F2 to Γ. Then for n/2 n/2 (Yn/2 , Xn/2 ) ∈ F2 ×F2 we construct the function f ∈ Bn as follows: ⊕ b Yn/2 · ϕ(b). (19) f (Yn/2 , Xn/2 ) = n/2 b∈F2 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 Remark 1: 1) For Inequality (15) holds, we have |Γ| = s ∑ |Γk | ≥ 2 n/2 . where (20) Due to this we can find an injective mapping ϕ. 2) All the functions in Γ are partially linear functions and each Γk is a set of disjoint spectra functions. Theorem 1: Let f ∈ Bn be as in Construction 1. Then f is an almost optimal (n, m, d, Nf ) function with s ∑ (ak · 2n/2−k−1 ) { ak = k=0 Nf ≥ 2n−1 − 2n/2−1 − 4 (21) k=1 0 1 if Ak = ∅ if Ak = ̸ ∅. From (4), Inequality (21) holds. From Definition 2, f is almost optimal. Note that the algebraic degree of any function in Γ1 is 2. Hence, when max{k | ak ̸= 0, k = 1, 2, · · · s} = 1 (30) d ≤ n/2 + 2 where the equality holds if and only if |A1 | is odd. Note that the algebraic degree of any bent functions on ′ F2k 2 can reach k when k ≥ 2. So d can reach n/2 + k when k ′ ≥ 2 and |Ak′ | is odd, where k ′ = max{k | ak ̸= 0, k = 1, 2, · · · s}. and (29) (31) n/2 F2 , Let 0 ≤ k ≤ s. Any gb ∈ Γk is a partially linear function. From (14), we have Any gb ∈ Γ, b ∈ is an m-resilient function, where gb (Xn/2 ) = ϕ(b). From Lemma 2, f is an m-resilient function since it is a concatenation of m-resilient functions. Remark 2: 1) The nonlinearity of the resilient functions constructed above is always strictly greater than 2n−1 − 2n/2 . For reasonable fixed n and m, the nonlinearity of the constructed functions is always greater than that of the known ones except some functions on small even number of variables. 2) Let m be the maximum number such that Inequality (15) holds. Roughly speaking, m/n tends to 1/4. Example 1: It is possible to construct a (16, 1, 10, 215 −27 − 5 2 ) function. Note that s = ⌊(n − 2m − 2)/4⌋=3. For 1 ≤ k ≤ ′ ′′ 3, let X8−2k = (x1 , · · · , x8−2k ) ∈ F8−2k and X2k = 2 ′ ′′ 8 2k (x8−2k+1 , · · · , x8 ) ∈ F2 . Let X8 = (X8−2k , X2k ) ∈ F2 . We construct four sets of disjoint spectra functions as follows: Wgb (α) ∈ {0, ±2n/2−k }. Γ0 = {c · X8 | wt(c) > 1, c ∈ F82 }. d ≤ n/2 + max{2, max{k | ak ̸= 0, k = 1, 2, · · · s}}. (22) n/2 n/2 Proof: For any (β, α) ∈ F2 × F2 we have ∑ Wf (β, α) = (−1)f (Yn/2 ,Xn/2 )⊕(β,α)·(Yn/2 ,Xn/2 ) (Yn/2 ,Xn/2 )∈Fn 2 = ∑ (−1)β·b n/2 = (−1)gb (Xn/2 )⊕α·Xn/2 n/2 Xn/2 ∈F2 b∈F2 ∑ ∑ (−1)β·b Wgb (α) n/2 = b∈F2 s ∑ k=0 ∑ (−1)β·b Wgb (α) (23) ϕ(b)∈Γk n/2 b∈F2 For 1 ≤ k ≤ 3, Let n/2 Ak = Γk ∩ {ϕ(b) | b ∈ F2 }. (24) Since (15) holds, there exists an injective mapping ϕ such that ) s m ( ∑ ∑ n/2 |Ak | = . (25) i i=1 k=1 From Lemma 3, Γk is a set of disjoint spectra functions. Noting (10), if Ak ̸= ∅, then we have ∑ (−1)β·b Wgb (α) ∈ {0, ±2n/2−k }. (26) ϕ(b)∈Γk n/2 b∈F2 If Ak = ∅, then we have ∑ (−1)β·b Wgb (α) = 0. where hc ∈ Hk . We have 8−2k ∑ (8 − 2k ) |Γk | = , 0 ≤ k ≤ 3. i i=2 Notice that |Γ0 | + |Γ2 | = 258 > 28 , it is possible to establish an injective mapping ϕ from F82 to ℜ, where ℜ = Γ0 ∪ Γ2 . Then for (Y8 , X8 ) ∈ F82 × F82 we construct the function f ∈ B16 as follows: ⊕ f (Y8 , X8 ) = Y8b · ϕ(b). b∈F82 (27) ϕ(b)∈Γk n/2 b∈F2 From (28), for any (β, α) ∈ F82 × F82 , we have max 8 |Wf (β, α)| ≤ (β,α)∈F2 Combining (23), (26), and (27), we have |Wf (β, α)| ≤ 2n/2 + ′′ ′ ) | wt(c) > 1, c ∈ F8−2k } ⊕ hc (X2k Γk = {c · X8−2k 2 s ∑ k=1 ak · 2n/2−k (28) 3 ∑ ∑ |Wg (α)| k=0 g∈Γk = 3 ∑ k=0 |Wg (α)| = 28 + 26 max 8 α∈F2 g∈Γk IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 5 Theorem 2: The function f ′ ∈ Bn proposed by Construction 2 is an almost optimal (n, m, n − m − 1, Nf ′ ) function with By (4), we have Nf ≥ 215 − 27 − 25 . Note that the partially linear function in Γ2 can be denoted by g = c · X4′ ⊕ hc (X4′′ ) where hc is a bent function on F42 . Since the algebraic degree of hc (X4′′ ) can reach 2, deg(f ) can reach 8+2=10. So it is possible to obtain a (16, 1, 10, 215 − 27 − 25 ) function. V. D EGREE O PTIMIZATION {i1 , · · · , im+1 } ∪ {im+2 , · · · , in/2 } = {1, · · · , n/2}. The algebraic degree of any (n, m, d, Nf ) function f obtained in Construction 1 can be optimized by adding a monomial xim+2 · · · xin/2 to one function g ∈ Γ with ϕ−1 (g) ̸= ∅, where g can be denoted by (32) It is not difficult to prove that Nf ′ ∈ {Nf , Nf −2m+1 }, where Nf ′ is the nonlinearity of the degree-optimized function f ′ . To optimize the algebraic degree of f and ensure that Nf ′ = Nf , we below propose an idea to construct a set of disjoint spectra functions Γ′0 including a nonlinear function g ′ = g + xim+2 · · · xin/2 . Construction 2: Let n ≥ 12 be an even number, m be a positive number, and (a1 , · · · , as ) ∈ Fs2 such that ) n/2 ( ∑ n/2 − 2n/2−m−1 + 1 j j=m+1 ) n/2−2k ( s ∑ ∑ n/2 − 2k ak · ≥ 2n/2 (33) + j j=m+1 k=1 where s = ⌊(n − 2m − 2)/4⌋. Let n/2 Proof: f ′ is an m-resilient function since it is a concatenation of m-resilient functions. n/2 Let gb (Xn/2 ) = ϕ′ (b) ∈ Γ′ , b ∈ F2 . From the proof of n/2 n/2 Theorem 1, for any (β, α) ∈ F2 × F2 , we have ϕ(b)∈Γ′0 n/2 b∈F2 k=1 (34) n/2 n/2 F2 . We have Wg′ (α) = ∑ Xn/2 ∈F (−1) = {g (Xn/2 )} ∪ {c · Xn/2 |c ∈ n/2 F2 , wt(c) > m, c ∈ / S}. (36) Set Γ′ = Γ′0 ∪ Γ1 ∪ · · · ∪ Γs . (37) Denote by ϕ′ any injective mapping from F2 to Γ′ such that ϕ′−1 (gc′ ) ̸= ∅. The function f ′ ∈ Bn is constructed as follows: ⊕ b Yn/2 · ϕ′ (b). (38) f ′ (Yn/2 , Xn/2 ) = n/2 n/2 b∈F2 and α = (α1 , · · · , αn/2 ) ∈ (c′ +α)·Xn/2 ⊕xim+2 ··· xin/2 n/2 2 2n/2 − 2m+2 = ±2m+2 0 if α = c′ if α = ̸ c′ and θ = δ if α = ̸ c′ and θ ̸= δ. (41) where δ = (c′i1 , · · · , c′im+1 ) and θ = (αi1 , · · · , αim+1 ). Let n/2 gb (Xn/2 ) = ϕ′ (b) ∈ Γ′ , b ∈ F2 . When gb ∈ Γ′0 and gb = c · Xn/2 ̸= g ′ , we have { 0 if α ̸= c Wgb (α) = (42) 2n/2 if α = c. From (36), if α ̸= c′ and (αi1 , · · · , αim+1 ) = (1 · · · 1), then α ̸= c. Obviously, Γ′0 is a set of disjoint spectra functions. So we have ∑ (−1)β·b Wgb (α) ∈ {0, ±2m+2 , ±(2n/2 − 2m+2 ), ±2n/2 }. n/2 Let Ak = Γk ∩ {ϕ(b) | b ∈ F2 }. Similarly to the proof of Theorem 1, for any (β, α) ∈ Fn2 , we have (35) where c ∈ S. For 1 ≤ k ≤ s, Γk is defined as in Construction 1. And we modify the Γ0 in Construction 1 as follows: ′ ϕ(b)∈Γk n/2 b∈F2 Let c′ = (c′1 , · · · , c′n/2 ) ∈ F2 |Wf ′ (β, α)| ≤ 2n/2 + ′ Γ′0 (39) k=1 (43) Let g ′ (Xn/2 ) = c′ · Xn/2 ⊕ xim+2 xim+3 · · · xin/2 ak · 2n/2−k−1 . ϕ(b)∈Γ′0 n/2 b∈F2 S = {c | c = (c1 , · · · ,cn/2 ) ∈ F2 , wt(c) > m, (ci1 , · · · , cim+1 ) = (1 · · · 1)}. s ∑ Wf ′ (β, α) = s ∑ ∑ ∑ (−1)β·b Wgb (α) + (−1)β·b Wgb (α). (40) Let g = xi1 ⊕ · · · ⊕ xim+1 ⊕ ~(xim+2 , · · · , xin/2 ). Nf ′ ≥ 2n−1 − 2n/2−1 − s ∑ ak · 2n/2−k k=1 { where ak = 0 1 if Ak = ∅ if Ak = ̸ ∅. From (3), Inequality (39) holds and f ′ is obviously almost optimal. For the existence of g ′ , deg(f ′ ) = n − m − 1. Remark 3: 1) Apparently, the idea above to obtain degree-optimized resilient functions is firstly considered by Pasalic [17]. 2) A long list of input instances and the corresponding cryptographic parameters can be found in Table I and Table II. In Table II, the entries with “*” represent the functions that can not be degree optimized via Construction 2 on the premise of that Nf ′ = Nf . IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 6 TABLE I E XISTENCE OF ALMOST OPTIMAL (n, m, n − m − 1, Nf ′ ) FUNCTIONS (1 ≤ m ≤ 4) m n≡0 (mod4) 1 n≡2 (mod4) n≡0 (mod4) 2 n≡2 (mod4) n≡0 (mod4) 3 n≡2 (mod4) n≡0 (mod4) 4 n≡2 (mod4) n 12 ≤ n ≤ 20 24 ≤ n ≤ 112 116 ≤ n ≤ 132 n = 136 140 ≤ n ≤ 492 496 ≤ n ≤ 512 n = 516 520 ≤ n ≤ 604 n = 608 612 ≤ n ≤ 628 632 ≤ n ≤ 2024 14 ≤ n ≤ 50 54 ≤ n ≤ 58 62 ≤ n ≤ 238 242 ≤ n ≤ 246 250 ≤ n ≤ 290 294 ≤ n ≤ 298 302 ≤ n ≤ 1002 n = 16 20 ≤ n ≤ 40 n = 44 48 ≤ n ≤ 84 n = 88 92 ≤ n ≤ 96 100 ≤ n ≤ 176 n = 180 n = 184 188 ≤ n ≤ 196 n = 200 18 ≤ n ≤ 26 30 ≤ n ≤ 58 62 ≤ n ≤ 66 70 ≤ n ≤ 122 n = 126 130 ≤ n ≤ 138 n = 142 146 ≤ n ≤ 250 n = 20 24 ≤ n ≤ 32 n = 36 40 ≤ n ≤ 56 n = 60 64 ≤ n ≤ 88 n = 92 n = 96 100 ≤ n ≤ 144 22 ≤ n ≤ 26 30 ≤ n ≤ 42 n = 46 50 ≤ n ≤ 70 n = 74 n = 78 82 ≤ n ≤ 114 28 ≤ n ≤ 32 36 ≤ n ≤ 48 n = 52 56 ≤ n ≤ 68 n = 72 76 ≤ n ≤ 100 n = 26 30 ≤ n ≤ 38 n = 42 46 ≤ n ≤ 58 n = 62 66 ≤ n ≤ 82 n = 86 n = 90 94 ≤ n ≤ 118 Nf ′ 2n−1 − 2n/2−1 − 2n/4+1 − 4 2n−1 − 2n/2−1 − 2n/4+2 − 4 2n−1 − 2n/2−1 − 2n/4+2 − 2n/4+1 − 4 2n−1 − 2n/2−1 − 2n/4+2 − 2n/4+1 − 2n/4 − 4 2n−1 − 2n/2−1 − 2n/4+3 − 4 2n−1 − 2n/2−1 − 2n/4+3 − 2n/4+1 − 4 2n−1 − 2n/2−1 − 2n/4+3 − 2n/4+1 − 2n/4 − 4 2n−1 − 2n/2−1 − 2n/4+3 − 2n/4+2 − 4 2n−1 − 2n/2−1 − 2n/4+3 − 2n/4+2 − 2n/4 − 4 2n−1 − 2n/2−1 − 2n/4+3 − 2n/4+2 − 2n/4+1 − 4 2n−1 − 2n/2−1 − 2n/4+4 − 4 2n−1 − 2n/2−1 − 2(n+6)/4 − 4 2n−1 − 2n/2−1 − 2(n+6)/4 − 2(n+2)/4 − 4 2n−1 − 2n/2−1 − 2(n+10)/4 − 4 2n−1 − 2n/2−1 − 2(n+10)/4 − 2(n+2)/4 − 4 2n−1 − 2n/2−1 − 2(n+10)/4 − 2(n+6)/4 − 4 n−1 2 − 2n/2−1 − 2(n+10)/4 − 2(n+6)/4 − 2(n+2)/4 − 4 2n−1 − 2n/2−1 − 2(n+14)/4 − 4 2n−1 − 2n/2−1 − 2n/4+2 − 8 2n−1 − 2n/2−1 − 2n/4+3 − 8 2n−1 − 2n/2−1 − 2n/4+3 − 2n/4+2 − 8 2n−1 − 2n/2−1 − 2n/4+4 − 8 2n−1 − 2n/2−1 − 2n/4+4 − 2n/4+2 − 8 2n−1 − 2n/2−1 − 2n/4+4 − 2n/4+3 − 8 2n−1 − 2n/2−1 − 2n/4+5 − 8 2n−1 − 2n/2−1 − 2n/4+5 − 2n/4+3 − 8 2n−1 − 2n/2−1 − 2n/4+5 − 2n/4+3 − 2n/4+2 − 2n/4+1 − 8 2n−1 − 2n/2−1 − 2n/4+5 − 2n/4+4 − 8 2n−1 − 2n/2−1 − 2n/4+5 − 2n/4+4 − 2n/4+3 − 8 2n−1 − 2n/2−1 − 2(n+10)/4 − 8 2n−1 − 2n/2−1 − 2(n+14)/4 − 8 2n−1 − 2n/2−1 − 2(n+14)/4 − 2(n+10)/4 − 8 2n−1 − 2n/2−1 − 2(n+18)/4 − 8 2n−1 − 2n/2−1 − 2(n+18)/4 − 2(n+10)/4 − 8 2n−1 − 2n/2−1 − 2(n+18)/4 − 2(n+14)/4 − 8 2n−1 − 2n/2−1 − 2(n+18)/4 − 2(n+14)/4 − 2(n+10)/4 − 2(n+6)/4 − 8 2n−1 − 2n/2−1 − 2(n+22)/4 − 8 2n−1 − 2n/2−1 − 2n/4+3 − 2n/4+2 − 16 2n−1 − 2n/2−1 − 2n/4+4 − 16 2n−1 − 2n/2−1 − 2n/4+4 − 2n/4+3 − 16 2n−1 − 2n/2−1 − 2n/4+5 − 16 2n−1 − 2n/2−1 − 2n/4+5 − 2n/4+4 − 16 2n−1 − 2n/2−1 − 2n/4+6 − 16 2n−1 − 2n/2−1 − 2n/4+6 − 2n/4+4 − 16 2n−1 − 2n/2−1 − 2n/4+6 − 2n/4+5 − 16 2n−1 − 2n/2−1 − 2n/4+7 − 16 2n−1 − 2n/2−1 − 2(n+14)/4 − 16 2n−1 − 2n/2−1 − 2(n+18)/4 − 16 2n−1 − 2n/2−1 − 2(n+18)/4 − 2(n+14)/4 − 16 2n−1 − 2n/2−1 − 2(n+22)/4 − 16 n−1 2 − 2n/2−1 − 2(n+22)/4 − 2(n+18)/4 − 16 2n−1 − 2n/2−1 − 2(n+22)/4 − 2(n+18)/4 − 2(n+14)/4 − 16 2n−1 − 2n/2−1 − 2(n+26)/4 − 16 2n−1 − 2n/2−1 − 2n/4+5 − 32 2n−1 − 2n/2−1 − 2n/4+6 − 32 2n−1 − 2n/2−1 − 2n/4+6 − 2n/4+5 − 32 2n−1 − 2n/2−1 − 2n/4+7 − 32 2n−1 − 2n/2−1 − 2n/4+7 − 2n/4+5 − 2n/4+4 − 32 2n−1 − 2n/2−1 − 2n/4+8 − 32 2n−1 − 2n/2−1 − 2(n+18)/4 − 32 2n−1 − 2n/2−1 − 2(n+22)/4 − 32 2n−1 − 2n/2−1 − 2(n+22)/4 − 2(n+18)/4 − 32 2n−1 − 2n/2−1 − 2(n+26)/4 − 32 2n−1 − 2n/2−1 − 2(n+26)/4 − 2(n+22)/4 − 32 2n−1 − 2n/2−1 − 2(n+30)/4 − 32 2n−1 − 2n/2−1 − 2(n+30)/4 − 2(n+22)/4 − 2(n+18)/4 − 2(n+14)/4 − 32 2n−1 − 2n/2−1 − 2(n+30)/4 − 2(n+26)/4 − 2(n+22)/4 − 32 2n−1 − 2n/2−1 − 2(n+34)/4 − 32 Functions from Construction 2 (20, 2, 17, 219 − 29 − 28 ) (24, 3, 20, 223 − 211 − 210 ) (22, 3, 18, 221 − 210 − 29 ) (28, 4, 23, 227 − 213 − 212 ) (36, 4, 31, 235 − 217 − 215 ) (26, 4, 21, 225 − 212 − 211 ) (30, 4, 25, 229 − 214 − 213 ) IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 7 TABLE II A LMOST OPTIMAL (n, m, n − m − 1, Nf ′ ) FUNCTIONS (m ≥ 5) WHICH (30, 5, 24, 2 − 2 − 2 ) (42, 5, 36, 241 − 220 − 217 − 214 − 26 )∗ (54, 5, 48, 253 − 226 − 221 − 26 )∗ (64, 5, 48, 263 − 231 − 224 − 26 )∗ (76, 5, 70, 275 − 237 − 228 − 26 )∗ (88, 5, 82, 287 − 243 − 231 − 230 − 26 )∗ (98, 5, 92, 297 − 248 − 234 − 232 − 26 )∗ (34, 6, 27, 223 − 216 − 215 ) (48, 6, 41, 247 − 223 − 220 − 27 )∗ (60, 6, 53, 259 − 229 − 224 − 27 )∗ (70, 6, 63, 269 − 234 − 227 − 27 )∗ (82, 6, 75, 281 − 240 − 231 − 27 )∗ (92, 6, 85, 291 − 245 − 234 − 27 )∗ (38, 7, 30, 237 − 218 − 217 − 216 ) (48, 7, 40, 247 − 223 − 221 ) (58, 7, 50, 257 − 228 − 224 − 223 − 28 )∗ (66, 7, 58, 265 − 232 − 227 − 28 )∗ (76, 7, 68, 273 − 237 − 230 − 28 )∗ (86, 7, 78, 285 − 242 − 233 − 232 − 28 )∗ (98, 7, 90, 297 − 248 − 237 − 28 )∗ (42, 8, 33, 241 − 220 − 219 − 218 ) (52, 8, 43, 251 − 225 − 223 ) (68, 8, 59, 267 − 233 − 225 − 229 ) (76, 8, 67, 275 − 237 − 231 − 228 − 29 )∗ (88, 8, 79, 287 − 243 − 235 − 29 )∗ (98, 8, 89, 297 − 248 − 238 − 236 − 29 )∗ (46, 9, 36, 245 −222 −221 −220 −219 −210 )∗ (56, 9, 46, 255 − 227 − 225 ) (68, 9, 58, 267 −233 −229 −228 −227 −210 )∗ (76, 9, 66, 275 − 237 − 232 − 210 )∗ (88, 9, 78, 287 − 243 − 236 − 210 )∗ (100, 9, 90, 299 − 249 − 240 − 210 )∗ (52, 10, 41, 251 − 225 − 224 ) (68, 10, 57, 267 − 233 − 230 ) (80, 10, 69, 279 −239 −234 −233 −211 )∗ (86, 10, 75, 285 −242 −236 −235 −234 −211 )∗ (94, 10, 83, 293 − 246 − 239 − 211 )∗ (200, 10, 189, 2199 −299 −271 −270 −211 )∗ (56, 11, 44, 255 − 227 − 226 ) (74, 11, 62, 273 − 236 − 233 ) (86, 11, 74, 285 − 242 − 237 − 235 − 212 )∗ (94, 11, 82, 293 − 246 − 240 − 212 )∗ (60, 12, 47, 259 − 229 − 228 − 226 ) (70, 12, 57, 269 − 234 − 232 ) (84, 12, 71, 283 − 241 − 237 − 236 ) (98, 12, 85, 297 − 248 − 242 − 213 )∗ (66, 13, 52, 265 − 232 − 231 ) (90, 13, 76, 289 − 244 − 240 ) (100, 13, 86, 299 − 249 − 244 − 214 )∗ (68, 14, 53, 267 − 233 − 232 − 231 ) (80, 14, 65, 279 − 239 − 237 ) (94, 14, 79, 293 − 246 − 242 − 241 ) (72, 15, 56, 271 − 235 − 234 − 233 ) (84, 15, 68, 283 − 241 − 239 ) (92, 15, 76, 291 − 246 − 243 ) (200, 15, 184, 2199 −299 −278 −276 −216 )∗ (76, 16, 59, 275 − 237 − 236 − 235 − 233 ) (88, 16, 71, 287 − 243 − 241 ) (100, 16, 83, 299 − 249 − 246 ) (80, 17, 62, 279 −239 −238 −237 −236 −235 ) (100, 17, 82, 299 − 249 − 246 − 245 ) (86, 18, 67, 285 − 242 − 241 ) (100, 18, 91, 299 − 249 − 247 ) (90, 19, 70, 289 − 244 − 243 − 241 ) (200, 19, 180, 2199 − 299 − 283 − 220 )∗ (94, 20, 73, 293 − 246 − 245 − 244 ) (300, 20, 279, 2299 − 2149 − 2115 − 221 )∗ (100, 21, 78, 299 − 249 − 248 ) (400, 94, 305, 2399 − 2199 − 2198 − 2197 ) (700, 167, 532, 2699 − 2349 − 2348 − 2347 ) (900, 216, 683, 2899 − 2449 − 2448 − 2447 ) 29 14 13 6 ∗ (36, 5, 30, 2 − 2 − 2 − 2 ) (44, 5, 38, 243 − 221 − 218 − 26 )∗ (58, 5, 52, 257 − 228 − 222 − 221 − 26 )∗ (70, 5, 64, 269 − 234 − 226 − 26 )∗ (80, 5, 74, 279 − 239 − 229 − 26 )∗ (90, 5, 84, 289 − 244 − 232 − 26 )∗ (100, 5, 94, 299 − 249 − 235 − 26 )∗ (40, 6, 33, 239 − 219 − 217 − 216 − 27 )∗ (52, 6, 45, 251 − 225 − 222 ) (64, 6, 47, 263 − 231 − 225 − 224 − 27 )∗ (76, 6, 69, 275 − 237 − 229 − 27 )∗ (86, 6, 79, 285 − 242 − 232 − 27 )∗ (96, 6, 89, 295 − 247 − 235 − 27 )∗ (40, 7, 32, 239 − 219 − 218 ) (52, 7, 44, 251 − 225 − 222 − 221 − 28 )∗ (60, 7, 52, 259 − 229 − 225 − 28 )∗ (70, 7, 62, 269 − 234 − 228 − 227 − 28 )∗ (78, 7, 70, 277 − 238 − 231 − 28 )∗ (88, 7, 80, 287 − 243 − 234 − 28 )∗ (100, 7, 92, 299 − 249 − 238 − 28 )∗ (44, 8, 35, 243 − 221 − 220 ) (58, 8, 49, 257 − 228 − 225 − 29 )∗ (70, 8, 61, 269 − 234 − 229 − 227 − 29 )∗ (78, 8, 69, 277 − 238 − 232 − 29 )∗ (92, 8, 83, 291 − 245 − 236 − 235 − 29 )∗ (100, 8, 91, 299 − 249 − 239 − 29 )∗ (48, 9, 38, 247 − 223 − 222 ) (62, 9, 52, 261 − 230 − 227 − 226 ) (70, 9, 60, 269 − 234 − 230 − 210 )∗ (80, 9, 70, 279 − 239 − 234 − 210 )∗ (94, 9, 84, 293 − 246 − 238 − 210 )∗ (200, 9, 190, 2199 − 299 − 270 − 210 )∗ (60, 10, 49, 259 − 229 − 227 ) (74, 10, 63, 273 −236 −232 −230 −211 )∗ (82, 10, 71, 281 − 240 − 235 − 211 )∗ (88, 10, 77, 287 − 243 − 237 − 211 )∗ (98, 10, 87, 297 −248 −240 −239 −238 −211 )∗ (300, 10, 289, 2299 −2149 −299 −298 −211 )∗ (66, 11, 54, 265 − 232 − 230 ) (80, 11, 68, 279 − 239 − 235 ) (88, 11, 76, 287 − 243 − 238 ) (98, 11, 86, 297 − 248 − 241 − 240 − 212 )∗ (62, 12, 49, 261 − 230 − 229 ) (76, 12, 63, 275 − 237 − 234 − 233 ) (86, 12, 73, 285 − 242 − 238 ) (100, 12, 87, 299 − 249 − 243 − 213 )∗ (74, 13, 60, 273 − 236 − 234 ) (96, 13, 82, 295 − 247 − 242 − 241 ) (200, 13, 186, 2199 − 299 − 276 − 214 )∗ (70, 14, 55, 269 − 234 − 233 ) (86, 14, 71, 285 − 242 − 239 − 238 ) (96, 14, 81, 295 − 247 − 243 ) (74, 15, 58, 273 − 236 − 235 ) (86, 15, 70, 285 − 242 − 240 ) (98, 15, 82, 297 − 248 − 244 − 243 − 242 ) (300, 15, 284, 2299 − 2149 − 2108 − 216 )∗ (78, 16, 61, 277 − 238 − 237 ) (96, 16, 79, 295 − 247 − 244 − 242 ) (200, 16, 183, 2199 − 299 − 280 − 217 )∗ (82, 17, 64, 281 − 240 − 239 ) (200, 17, 182, 2199 − 299 − 281 − 218 )∗ (96, 18, 77, 295 − 247 − 245 − 243 ) (200, 18, 191, 2199 − 299 − 282 − 219 )∗ (92, 19, 72, 291 − 245 − 244 ) (300, 19, 280, 2299 − 2149 − 2114 − 220 )∗ (96, 20, 75, 295 − 247 − 246 ) (500, 20, 479, 2499 − 2249 − 2173 − 221 )∗ (200, 45, 154, 2199 − 299 − 298 ) (500, 118, 381, 2499 − 2249 − 2248 − 2247 ) (800, 191, 608, 2799 − 2399 − 2398 − 2396 ) (1000, 241, 758, 2999 − 2499 − 2498 − 2497 ) 35 17 15 WERE NOT KNOWN EARLIER (38, 5, 32, 237 − 218 − 216 ) (48, 5, 42, 247 − 223 − 219 − 26 )∗ (60, 5, 54, 259 − 229 − 223 − 26 )∗ (74, 5, 68, 273 − 236 − 227 − 224 − 26 )∗ (84, 5, 78, 283 − 241 − 230 − 26 )∗ (94, 5, 88, 293 − 246 − 233 − 26 )∗ (200, 5, 194, 2199 − 299 − 262 − 261 − 26 )∗ (42, 6, 35, 241 − 220 − 218 ) (54, 6, 47, 253 − 226 − 222 − 27 )∗ (66, 6, 59, 265 − 232 − 226 − 27 )∗ (80, 6, 73, 279 − 239 − 230 − 229 − 27 )∗ (90, 6, 83, 289 − 244 − 233 − 232 − 27 )∗ (100, 6, 93, 299 − 249 − 236 − 235 − 27 )∗ (46, 7, 38, 245 − 222 − 220 ) (54, 7, 46, 253 − 226 − 223 ) (64, 7, 46, 263 − 231 − 226 − 225 − 28 )∗ (72, 7, 64, 271 − 235 − 229 − 28 )∗ (82, 7, 74, 281 − 240 − 232 − 28 )∗ (92, 7, 84, 291 − 245 − 235 − 28 )∗ (200, 7, 182, 2199 − 299 − 266 − 263 − 28 )∗ (50, 8, 41, 249 − 224 − 222 − 221 ) (64, 8, 45, 263 − 231 − 227 − 29 )∗ (72, 8, 63, 271 − 235 − 230 − 29 )∗ (82, 8, 73, 281 − 240 − 233 − 29 )∗ (94, 8, 85, 293 − 246 − 237 − 29 )∗ (200, 8, 191, 2199 − 299 − 268 − 29 )∗ (54, 9, 44, 253 − 226 − 224 − 223 − 222 ) (64, 9, 44, 263 − 231 − 228 ) (74, 9, 64, 273 − 236 − 232 − 210 )∗ (82, 9, 72, 281 − 240 − 234 − 210 )∗ (98, 9, 88, 297 − 248 − 239 − 238 − 210 )∗ (300, 9, 290, 2299 −2159 −2107 −2106 −2104 −210 )∗ (66, 10, 55, 265 −232 −229 −228 −227 −226 −225 −211 )∗ (76, 10, 65, 275 − 237 − 233 ) (84, 10, 73, 283 − 241 − 236 − 211 )∗ (92, 10, 81, 291 −245 −238 −237 −236 −235 −211 )∗ (100, 10, 89, 299 − 249 − 241 − 211 )∗ (500, 10, 489, 2499 − 2249 − 2153 − 211 )∗ (72, 11, 60, 271 − 235 − 232 − 230 ) (84, 11, 72, 283 − 241 − 237 ) (92, 11, 80, 291 − 245 − 239 − 238 − 212 )∗ (100, 11, 88, 299 − 249 − 242 − 212 )∗ (68, 12, 55, 267 − 233 − 231 − 230 ) (78, 12, 65, 277 − 238 − 235 ) (92, 12, 79, 291 − 245 − 240 ) (200, 12, 187, 2199 −299 −274 −272 −271 −213 )∗ (82, 13, 68, 281 − 240 − 237 ) (98, 13, 84, 297 − 248 − 243 ) (300, 13, 286, 2299 − 2149 − 2105 − 214 )∗ (78, 14, 63, 277 − 238 − 236 − 234 ) (88, 14, 73, 287 − 243 − 240 ) (200, 14, 185, 2199 − 299 − 276 − 215 )∗ (82, 15, 66, 281 − 240 − 238 − 237 ) (90, 15, 74, 289 − 244 − 241 − 240 − 239 ) (100, 15, 84, 299 − 249 − 245 ) (500, 15, 484, 2499 − 2249 − 2164 − 216 )∗ (86, 16, 69, 285 − 242 − 240 − 239 ) (98, 16, 81, 297 − 248 − 245 ) (300,16,283,2299 −2149 −2109 −2108 −2107 −2105 −217 )∗ 91 45 43 (92, 17, 74, 2 − 2 − 2 ) (300, 17, 282, 2299 − 2149 − 2111 − 218 )∗ (98, 18, 79, 297 − 248 − 246 ) (300, 18, 291, 2299 − 2149 − 2112 − 219 )∗ (100, 19, 80, 299 − 249 − 247 − 244 − 243 ) (500, 19, 480, 2499 − 2249 − 2171 − 220 )∗ (200, 20, 179, 2199 − 299 − 284 − 221 )∗ (1000, 20, 979, 2999 − 2499 − 2308 − 221 )∗ (300,70,229,2299 −2149 −2148 −2147 −2146 −2145 ) (600,143,456,2599 −2299 −2298 −2297 ) (5000,1232,3767,24999 −22499 −22498 −22497 −22496 ) (10000,2475,7524,29999 −24999 −24998 −24997 −24996 ) IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 VI. I MPROVED V ERSION OF THE M AIN C ONSTRUCTION Both constant functions and balanced Boolean functions are regarded as 0-resilient functions. The Boolean functions that are neither balanced nor correlation-immune are regarded as (−1)-resilient functions (e.g. bent functions). Lemma 4: With the same notation as in the Definition 4, if hc is a v-resilient function, then gc is a (wt(c) + v)-resilient function. Proof: Let α ∈ Fp2 and l = c·Xt′ . It is not difficult to deduce that Wgc (α) = Wl (αi1 , · · · , αit )·Whc (αit+1 , · · · , αip ). When wt(αi1 , · · · , αit ) < wt(c), Wl (αi1 , · · · , αit ) = 0. From Lemma 1, for hc is a v-resilient function, we have 8 Let n/2 Ak = Ωk ∩ {φ(b) | b ∈ F2 }. (51) Note that each Ωk (k = 0, 1, · · · , ⌊n/4⌋) is a set of disjoint spectra functions. Similarly to the proof of Theorem 1, we obtain ⌊n/4⌋ |Wf (β, α)| ≤ 2n/2 + ∑ ak · 2n/2−2k · (22k − 2Nhk ) (52) k=1 { where ak = 0 1 if Ak = ∅ if Ak = ̸ ∅. Whc (αit+1 , · · · , αip ) = 0, for wt(αit+1 , · · · , αip ) ≤ v. From (3), Inequality (49) holds. From Lemma 4, all the functions in Ω are m-resilient Obviously, Wgc (α) = 0 when wt(α) ≤ wt(c) + v. From functions. Due to Lemma 2, f is an m-resilient function. Lemma 1, gc is a (wt(c) + v)-resilient function. For the existence of a degree-optimized function gb ∈ Ω with Construction 3: Let n ≥ 12 be an even number, m be a −1 φ (g ) = ̸ ∅, we have deg(f ) = n − m − 1. b positive number, ek be a nonnegative number with 0 ≤ ek ≤ Fixing n and m, we can also obtain lots of degree-optimized k + 1, and ak ∈ F2 (k = 1, · · · , ⌊n/4⌋) such that resilient functions whose nonlinearity are better than that of ) ⌊n/4⌋ ) n/2 ( n/2−2k ( functions constructed by Construction 1. See the following ∑ ∑ ∑ n/2 n/2 − 2k a k · + ≥ 2n/2 . example. i j i=m+1 j=m−ek +1 k=1 Example 2: It is possible to construct a (28, 1, 26, 227 − (44) 213 − 28 − 26 ) function. Let Let Xn/2 = (x1 , · · · , xn/2 ) ∈ F2 , Xt′ = (x1 , · · · , xt ) ∈ Ft2 ′′ and X2k = (xt+1 , · · · , xn/2 ) ∈ F2k 2 , where t + 2k = n/2. Let n/2 n/2 Ω0 = {c · Xn/2 | c ∈ F2 , wt(c) > m}. (45) For 1 ≤ k ≤ ⌊n/4⌋ and 0 ≤ ek ≤ m + 1, let Rk be a nonempty set of nonlinear (2k, ek − 1, −, Nhk ) functions with high nonlinearity and ′′ Ωk = {c · Xt′ ⊕ hc (X2k ) | c ∈ Ft2 , wt(c) > m − ek } (46) where hc ∈ Rk . Set ⌊n/4⌋ Ω= ∪ Ωk . (47) k=0 Ω0 = {c · Xt′ | c ∈ F14 2 , wt(c) ≥ 2} and ′′ ) | c ∈ F42 , hc ∈ R5 } Ω5 = {c · X4′ ⊕ hc (X10 where R5 is a nonempty set of (10, 1, 8, 492) functions [8]. Note that |Ω0 | = 16369, |Ω5 | = 16. For 16369 + 16 > 214 , it is possible to select 214 many 14-variable 1-resilient functions from Ω0 ∪ Ω5 . We concatenate these functions and obtain a (28, 1, 26, 227 − 213 − 28 − 26 ) function. Similarly, one can obtain the following resilient functions: (36, 3, 32, 235 −217 −213 ), (42, 5, 36, 241 −220 −217 −214 ), (86, 4, 81, 285 −242 −229 −227 −226 −218 −214 −213 −25 ), (66, 10, 55, 265 − 232 − 229 − 228 − 227 − 226 − 225 ), etc. n/2 Denote by φ any injective mapping from F2 to Ω such that there exists an (n/2, m, n/2 − m − 1, Ngb ) function gb ∈ Ω with φ−1 (gb ) ̸= ∅ . We construct the function f ∈ Bn as follows: ⊕ b f (Yn/2 , Xn/2 ) = Yn/2 · φ(b) (48) n/2 b∈F2 Theorem 3: If f ∈ Bn is proposed by Construction 3, then f is an almost optimal (n, m, n − m − 1, Nf ) function with ⌊n/4⌋ Nf ≥ 2n−1 − 2n/2−1 − ∑ (ak · 2n/2−2k · (22k−1 − Nhk )). k=1 (49) n/2 Proof: For any (β, α) ∈ F2 ⌊n/4⌋ Wf (β, α) = n/2 × F2 ∑ ∑ k=0 φ(b)∈Ωk n/2 b∈F2 we have (−1)β·b Wgb (α) (50) VII. C ONCLUSION AND AN O PEN P ROBLEM In this paper, we described a technique for constructing resilient functions with good nonlinearity on large even number variables. As a consequence, we obtained general constructions of functions which were not known earlier. Sarkar and Maitra [23] have shown that the nonlinearity of any (n, m, n − m − 1, Nf ) function (m ≤ n − 2) is divisible by 2m+2 . And they have deduced the following result: If n is even, and m ≤ n/2 − 2, then Nf ≤ 2n−1 − 2n/2−1 − 2m+1 . But we suppose that this upper bound could be improved. So we propose an open problem as follows: Does there exist n-variable (n ≥ 12 even), m-resilient (m ≤ ⌈n/4⌉) functions with nonlinearity > 2n−1 − 2n/2−1 − 2⌊n/4⌋+m−1 ? If there does, how to construct these functions? Conjecture: Let n ≥ 12 be even and m < ⌈n/4⌉. For any (n, m, −, Nf ) function, the following inequality always holds: Nf ≤ 2n−1 − 2n/2−1 − 2⌊n/4⌋+m−1 . (53) IEEE TRANSACTIONS ON INFORMATION THEORY, VOL.55, NO.12, PP. 5822-5831, DECEMBER 2009 R EFERENCES [1] P. Camion, C. Carlet, P. Charpin, and N. Sendrier, “On correlationimmune functions,” in Advances in Cryptology - CRYPTO’91 (Lecture Notes in Computer Sceince). Berlin, Germany: Springer-Verlag, 1992, vol. 547, pp. 86-100. [2] C. Carlet, “A larger class of cryptographic Boolean functions via a study of the Maiorana-Mcfarland constructions,” in Advances in Cryptology CRYPTO 2002 (Lecture Notes in Computer Sceince), Berlin, Germany: Springer-Verlag, 2002, vol. 2442, pp. 549-564. [3] S. Chee, S. Lee, D. Lee, and S. H. Sung, “On the correlation immune functions and their nonlinearity,” in Advances in Cryptology - Asiacrypt’96 (Lecture Notes in Computer Sceince). Berlin, Germany: SpringerVerlag, 1997, vol. 1163, pp. 232-243. [4] J. Clark, J. Jacob, S. Stepney, S. Maitra, and W. Millan, “Evolving Boolean functions satisfying multiple criteria,” in Progress in INDOCRYPT 2002 (Lecture Notes in Computer Science). Berlin, Germany: Springer-Verlag, 2002, vol. 2551, pp. 246-259. [5] J. F. Dillon, Elementary Hadamard difference set, Ph.D. Thesis, University of Maryland, 1974. [6] H. Dobbertin, “Construction of bent functions and balanced Boolean functions with high nonlinearity,” in Workshop on Fast Software Encryption (FES 1994) (Lecture Notes in Computer Science). Berlin, Germany: Springer-Verlag, 1995, vol. 1008, pp. 61-74. [7] M. Fedorova and Y. V. Tarannikov, “On the constructing of highly nonlinear resilient Boolean functions by means of special matrices,” in Progress in Cryptology - INDOCRYPT 2001 (Lecture Notes in Computer Science). Berlin, Germany: Springer-Verlag, 2001, vol. 2247, pp. 254-266. [8] S. Kavut, S. Maitra, and M. D. Yücel, “Search for Boolean functions with excellent profiles in the rotation symmetric class,” IEEE Transations on Information Theory, vol. 53, no. 5, pp. 1743-1751, 2007. [9] K. Khoo, G. Gong, and H.-K. Lee, “The rainbow attack on stream ciphers based on Maiorana-McFarland functions,” in Appiled Cryptography and Network Security - ACNS 2006 (Lecture Notes in Computer Sceince), Berlin, Germany: Springer-Verlag, 2006, vol. 3989, pp. 194209. [10] F. J. MacWilliams and N. J. A. Sloane, The Theory of Error-Correcting Codes, Amsterdam, The Netherlands: North-Holland, 1977. [11] S. Maitra and E. Pasalic, “A Maiorana-McFarland type construction for resilient Boolean functions on variables (n even) with nonlinearity > 2n−1 − 2n/2 + 2n/2−2 ,” Discrete Applied Mathematics, vol. 154, pp. 357-369, 2006. [12] S. Maitra and E. Pasalic, “Further constructions of resilient Boolean functions with very high nonlinearity,” IEEE Transations on Information Theory, vol. 48, no. 7, pp. 1825-1834, 2002. [13] W. Meier and O. Staffelbach, “Nonlinearity criteria for cryptographic functions,” in Advances in Cryptology - EUROCRYPT’89 (Lecture Notes in Computer Sceince), Berlin, Germany: Springer-Verlag, 1990, vol. 434, pp. 549-562. [14] W. Millan, A. Clark, and E. Dawson, “An effective genetic algorithm for finding highly nonlinear Boolean functions,” in Proceedings of the First International Conference on Information and Communication Security (Lecture Notes in Computer Science). Berlin, Germany: Springer-Verlag, 1997, vol. 1334, pp. 149-158. [15] W. Millan, A. Clark, and E. Dawson, “Boolean function design using hill climbing methods,” in Proceedings of the 4th Australasian Conference on Information Security and Privacy (Lecture Notes in Computer Science). Berlin, Germany: Springer-Verlag, 1999, vol. 1587, pp. 1-11. [16] W. Millan, A. Clark, and E. Dawson. “Heuristic design of cryptographically strong balanced Boolean functions,” in Advances in Cryptology - EUROCRYPT’98 (Lecture Notes in Computer Science). Berlin, Germany: Springer-Verlag, 1998, vol. 1403, pp. 489-499. [17] E. Pasalic, “Maiorana-McFarland class: degree optimization and algebraic properties,” IEEE Transactions on Information Theory, vol. 52, no.10, pp. 4581-4594, 2006. [18] E. Pasalic, S. Maitra, T. Johansson, and P. Sarkar, “New constructions of resilient and correlation immune Boolean functions achieving upper bounds on nonlinearity,” in Workshop on Coding and Cryptography - WCC 2001, Paris, France, Jan. 8-12, 2001. Published in Electronic Notes in Discrete Mathematics. Amsterdam, The Netherlands: Elsevier Science, 2001, vol. 6, pp. 158-167. [19] O. S. Rothaus, On ’bent’ functions, Journal of Combinatorial Theory, Ser. A, vol. 20, pp. 300-305, 1976. [20] Z. Saber, M. F. Uddin, and A. Youssef, “On the existence of (9, 3, 5, 240) resilient functions,” IEEE Transations on Information Theory, vol. 52, no. 5, pp. 2269-2270, 2006. 9 [21] P. Sarkar and S. Maitra, “Construction of nonlinear Boolean functions with important cryptographic properties,” in Advances in Cryptology - EUROCRYPT 2000 (Lecture Notes in Computer Sceince), Berlin, Germany: Springer-Verlag, 2000, vol. 1807, pp. 485-506. [22] P. Sarkar and S. Maitra, “Efficient implementation of cryptographically useful large Boolean functions, IEEE Transactions on Computers, vol. 52, no. 4, pp. 410-417, 2003. [23] P. Sarkar and S. Maitra, “Nonlinearity bounds and constructions of resilient Boolean functions,” in Advances in Cryptology - CRYPTO 2000 (Lecture Notes in Computer Sceince), Berlin, Germany: Springer-Verlag, 2000, vol. 1880, pp. 515-532. [24] P. Sarkar and S. Maitra, “Construction of nonlinear resilient Boolean functions using small affine functions,” IEEE Transactions on Information Theory, vol. 50, no. 9, pp. 2185-2193, 2004. [25] J. Seberry, X.-M. Zhang, and Y. Zheng, “Nonlinearity and propagation characteristics of balanced Boolean functions,” Information and Computation, vol. 119, pp. 1-13, 1995. [26] J. Seberry, X.-M. Zhang, and Y. Zheng, “Nonlinearly balanced Boolean functions and their propagation characteristics,” in Advances in Cryptology - CRYPTO’93 (Lecture Notes in Computer Sceince), Berlin, Germany: Springer-Verlag, 1994, vol. 773, pp. 49-60. [27] J. Seberry, X.-M. Zhang, and Y. Zheng, “On constructions and nonlinearity of correlation immune Boolean functions,” in Advances in Cryptology - EUROCRYPT’93 (Lecture Notes in Computer Sceince), Berlin, Germany: Springer-Verlag, 1984, vol. 765, pp. 181-199. [28] T. Siegenthaler, “Correlation-immunity of nonlinear combining functions for cryptographic applications,” IEEE Transactions on Information Theory, vol. 30, no.5, pp. 776-780, 1984. [29] Y. V. Tarannikov, “On resilient Boolean functions with maximum possible nonlinearity,” in Progress in Cryptology - INDOCRYPT 2000 (Lecture Notes in Computer Science). Berlin, Germany: Springer Verlag, 2000, vol. 1977, pp. 19-30. [30] Y. V. Tarannikov, “New constructions of resilient Boolean functions with maximal nonlinearity,” in Workshop on Fast Software Encryption (FSE 2001) (Lecture Notes in Computer Science). Berlin, Germany: SpringerVerlag, 2001, vol. 2355, pp. 66-77. [31] G.-Z. Xiao and J. L. Massey, “A spectral characterization of correlationimmune combining functions,” IEEE Transactions on Information Theory, vol. 34, no. 3, pp. 569-571, 1988. WeiGuo ZHANG received the B.S. degree and Ph.D. degree from Xidian University, Xi’an, China, in 2001 and 2007, respectively. In 2007, he joined ISN Lab (State Key Laboratory of Integrated Service Networks) at Xidian University. His research interests include cryptography, sequence design, and coding theory. GuoZhen XIAO received the B.S. degree in mathematics from Northeast Normal University, Changchun, China, in 1954, and the M.S. degree in mathematics from the East China Normal University, Shanghai, China, in 1956. From 1956 to 1960, he was an Associate Instructor in Northeast Normal University. He joined Xidian University, Xi’an, China, in 1960, and became a Full Professor in 1981. His research interests include cryptography, coding and information theory.
© Copyright 2026 Paperzz