Previous Article in Journal
Enhancing the Multikey GSW Scheme with CRT Decomposition and Ciphertext Compression for Efficient Distributed Decryption
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Novel Approach to Degree, Balancedness, and Affine Equivalence of Boolean Functions and Construction of a Special Class of Non-Quadratic Balanced Boolean Functions

1
Defence Research and Development Organisation (DRDO), Near Metcalfe House, Delhi 110054, India
2
Department of Artificial Intelligence, Amrita School of Artificial Intelligence, Amrita Vishwa Vidyapeetham, Faridabad 121002, India
3
Department of Electronics and Communication Engineering, Amrita School of Engineering, Amrita Vishwa Vidyapeetham, Chennai 601103, India
4
Department of Library and Information Science, Fu Jen Catholic University, New Taipei City 24205, Taiwan
5
Department of Computer Science and Information Engineering, Fintech and Blockchain Research Center, Asia University, Taichung City 41354, Taiwan
*
Authors to whom correspondence should be addressed.
Cryptography 2025, 9(3), 56; https://doi.org/10.3390/cryptography9030056
Submission received: 13 July 2025 / Revised: 5 August 2025 / Accepted: 11 August 2025 / Published: 29 August 2025

Abstract

In several stream cipher designs, Boolean functions (BFs) play a crucial role as non-linear components, either serving as filtering functions or being used within the combining process. The overall strength of stream ciphers mainly depends on certain cryptographic properties of BFs, including their balancedness, non-linearity, resistance to correlation, and algebraic degrees. In this paper, we present novel findings related to the algebraic degrees of BFs, which play an important role in the design of symmetric cryptographic systems, and propose a novel algorithm to directly deduce the algebraic degree of a Boolean function (BF) from its truth table. We also explore new results concerning balanced Boolean functions, specifically characterizing them by establishing new results regarding their support. Additionally, we propose a new approach for a subclass of affine equivalent Boolean functions and discuss well-known cryptographic properties in a very simple and lucid manner using this newly introduced approach. Moreover, we propose the first algorithm in the literature to construct non-quadratic balanced Boolean functions (NQBBFs) that possess no linear structure where their derivative equals 1. Finally, we discuss the complexity of this algorithm and present a table that shows the time taken by this algorithm, after its implementation in SageMath, for the generation of Boolean functions corresponding to different values of n (i.e., number of variables).

1. Introduction

Let F 2 = { 0 , 1 } be a finite field of order 2, and let F 2 n be a vector space of n-tuples over F 2 containing 2 n elements. A function f : F 2 n F 2 is known as a Boolean function (BF). Beyond their combinatorial significance in mathematics, BFs are critical in coding theory [1,2,3], cryptography [2,4], and combinatorics [5]. In cryptography, BFs are integral to the design of linear feedback shift registers (LFSRs) [6], the substitution boxes (S-boxes) of symmetric ciphers [7], and stream ciphers, where they serve as non-linear filter or combiner functions [8,9].
The cryptographic strength of systems employing BFs relies on properties such as the algebraic degree, non-linearity, algebraic immunity, autocorrelation, balancedness, bentness, and affine equivalence [10,11,12]. Recent advancements have significantly expanded the understanding and construction of BFs with optimal cryptographic properties. For instance, Behera and Gangopadhyay [13] developed an improved hybrid genetic algorithm (HGA) to construct balanced BFs with high non-linearity and low autocorrelation, demonstrating superior efficiency over traditional genetic algorithms through a novel cost function. Similarly, Carlet et al. [14] utilized evolutionary algorithms to enhance the cryptographic properties of BFs derived from algebraic constructions, achieving significant improvements in non-linearity for various BF sizes. Arshad and Khan [15] proposed a method to construct S-boxes using bent BFs via the Maiorana–McFarland method, addressing their inherent imbalance to create bijective S-boxes with high non-linearity, outperforming other heuristic approaches. Additionally, Abughazalah et al. [16] introduced a multi-criteria decision-making technique (IVPF–TOPSIS) to select optimal S-boxes based on multiple cryptographic properties, enhancing the design of modern block ciphers.
Furthermore, Çeşmelioğlu and Meidl [17] extended the study of equivalence classes for generalized BFs, introducing constructions of generalized bent functions that yield large affine spaces of bent functions, applicable to cryptographic designs. Cusick and Cheon [18] explored extended quadratic truncated rotation symmetric BFs, providing explicit generating functions for their weights and solving the Dickson form for such functions. Sun et al. [19] proposed systematic constructions of rotation symmetric BFs with even variables, satisfying nearly all cryptographic criteria, including high non-linearity and algebraic immunity. Ȯzçekiç et al. [20] employed a genetic algorithm to optimize balanced BFs close to bent functions, achieving improved autocorrelation and non-linearity for specific variable ranges. Liu [21] provided tight lower bounds on the second-order non-linearity of three classes of BFs, enhancing their applicability in cryptographic systems.
Among the key properties, the algebraic degree of a BF, defined as the highest degree of a monomial in its algebraic normal form (ANF), is crucial for applications in hash functions, Reed–Muller codes, pseudo-random number generators for stream ciphers, and S-boxes in block ciphers [8,22]. Balanced BFs, characterized by a Hamming weight of 2 n 1 , are essential in constructing symmetric ciphers resistant to differential cryptanalysis [11]. Recent designs, such as homophonic and FLIP ciphers [23], leverage balanced BFs on restricted subsets of F 2 n [9]. Affine equivalence, where two BFs f and g of n variables satisfy f ( x ) = g ( A x + b ) for some A GL ( n , F 2 ) and b F 2 n , remains a vital property for cryptographic analysis [9].
This work builds on these advancements by proposing novel results and algorithms for BFs. Unlike prior studies that often rely on the ANF to determine algebraic degree [24], we introduce an algorithm to compute the algebraic degree directly from a BF’s truth table for any degree, extending the results of [24]. We also establish new properties of balanced BFs and propose criteria for the assessment of balancedness, complementing the optimization techniques in [13,14,20]. Additionally, our novel approach to a subclass of affine equivalent BFs simplifies proofs for properties like non-linearity and autocorrelation, aligning with the equivalence studies in [17]. Finally, we present the first algorithm to construct non-quadratic balanced BFs with no linear structure where their derivative equals 1, addressing a gap in the literature and enhancing the cryptographic utility of BFs as seen in [15,19]. We elaborate on the main contribution of this paper in the following subsection.

1.1. Our Contribution

Typically, the algebraic degree of a Boolean function is computed by examining its algebraic normal form ( ANF ). However, as shown in [24], the algebraic degree of an n-variable Boolean function can, in some cases, be directly obtained without explicitly determining its ANF —specifically when the degree lies in the set { n 1 , n } . In this paper, we extend this idea to Boolean functions with degrees strictly less than n 1 . We also present a new algorithm as an alternative to the Fast Binary Möbius Transform [9] for the calculation of the algebraic degree. While the computational complexity of our method matches that of existing technique, the proposed algorithm offers the advantage of determining the algebraic degree without computing the ANF , making it particularly effective for the quick or off-hand computation of the algebraic degree for functions with small numbers of variables.
Additionally, we introduce several new and practically relevant results for balanced Boolean functions, which are of interest due to their applications in symmetric cryptography. These results provide tools for checking the balancedness of Boolean functions that lack unit linear structures (a concept formally defined later in the paper).
We also revisit a well-known subclass of affine equivalent Boolean functions [25], and, through a non-exhaustive yet novel approach, we simplify several classical results regarding their algebraic degree, non-linearity, and autocorrelation.
Finally, we propose an original algorithm for the construction of non-quadratic balanced Boolean functions that do not possess any linear structure and whose derivative equals one (see Section 2 for the definition). The correctness and complexity of this construction are discussed in detail. To the best of our knowledge, no prior work has addressed this specific construction, and the functions generated by our method possess desirable cryptographic properties.

1.2. Organization of This Paper

In Section 2, we recall some preliminaries relevant to our work. In Section 3, we discuss our main results on the algebraic degrees of BFs. The same section also includes an algorithm for determining the algebraic degree of a Boolean function. Section 4 is focused on examining key properties associated with the support of balanced BFs, and we also put forward a sufficient condition under which a Boolean function can be considered balanced. In Section 5, we present a novel approach to studying the properties of a subclass of affine equivalent BFs and provide simple, elegant, and novel proofs for certain well-known results. Moreover, we propose an algorithm to construct non-quadratic balanced BFs that have no linear structure at which the derivative is equal to 1. In Section 5.3, we also provide the time and space complexity of our algorithm and a table in which we present empirical results obtained by running our SageMath implementation. This helps to demonstrate the practicality of our algorithm for moderate values of n and provides insights into its computational behavior. The concluding remarks of the paper are presented in Section 6.

2. Preliminaries

In this paper, we use the notation F 2 = { 0 , 1 } for a finite field of order 2, and, for any natural number n, we regard F 2 n as an F 2 vector space of all n-tuples ( t 1 , t 2 , , t n ) . Let BLF n represent the set of all Boolean functions from F 2 n to F 2 . The functions from F 2 n to R are termed pseudo-Boolean functions, and the symbols , P ( ) are, respectively, used to denote the set { 1 , 2 , , n } and the power set of ∧. Throughout the paper, unless otherwise stated, J will be used to denote an element of P ( ) , and S ( ) denotes the set of all permutations on ∧. For  x = ( x 1 , x 2 , , x n ) F 2 n , we define x J : = i x i k i , where k i = 1 if i J and 0 otherwise.
Generally, the truth table representation is a classical approach of representing every Boolean function f BLF n in a unique way. However, for cryptographic and coding theory applications [8], the most commonly used form of Boolean function is the n-variable polynomial form over the quotient ring R [ x 1 , x 2 , , x n ] , where
R [ x 1 , x 2 , , x n ] = F 2 [ x 1 , x 2 , , x n ] x 1 2 x 1 , x 2 2 x 2 , , x n 2 x n .
The algebraic normal form of f, denoted by ANF ( f ) , is its representation as an element of R [ x 1 , x 2 , , x n ] . As a result, for every f BLF n , we have
ANF ( f ) = J P ( ) a J x J ,
where ⨁ is addition in F 2 and a J F 2 n .
For a vector u F 2 n , the Hamming weight, represented by W H ( u ) , refers to the total number of positions in u that contain non-zero entries. That is, W H ( u ) : = | { i | u i 0 } | , where | J | indicates the cardinality of the set J . We define S u p p ( u ) : = { i | u i 0 } and the Hamming weight of f BLF n as the number of u F 2 n , where f has a non-zero value. Precisely, the Hamming weight of f is the size of the set S u p p ( f ) : = { u F 2 n | f ( u ) = 1 } .
Definition 1
([9]). Let f BLF n be expressed in its algebraic normal form as
ANF ( f ) = J P ( ) a J x J ,
where a J F 2 for each J . The algebraic degree of f, denoted ALG d ( f ) , is defined by
ALG d ( f ) : = max { | J | : a J 0 } .
Theorem 1
([22]). Consider a Boolean function f BLF n whose algebraic normal form is given by
ANF ( f ) = J P ( ) a J x J .
Then, for every J P ( ) , the corresponding coefficient a J is computed as
a J = x F 2 n S u p p ( x ) J f ( x ) .
Definition 2
([22]). Let f BLF n and a F 2 n . Then, the derivative of f at a , symbolized by D a f ( x ) , is defined as D a f ( x ) : = f ( x ) f ( x + a ) .
Definition 3
(Linear Kernel [8]). The linear kernel of any n-variable Boolean function f, represented by E f , is the set of all those points c F 2 n for which D c f ( x ) is constant. Any element of E f is called a linear structure of f.
Theorem 2
([22]). For any non-constant Boolean function f BLF n and any a F 2 n , we have
ALG d ( D a f ( x ) ) < ALG d ( f ( x ) )
and there exist some c F 2 n such that ALG d ( D c f ( x ) ) = ALG d ( f ) 1 .
Definition 4
([22]). Let f BLF n and a F 2 n . Then, the autocorrelation of f is defined as AC f = m a x b F 2 n 0 | C f ( b ) | , where C f ( b ) = x F 2 n ( 1 ) D b f ( x ) .
Definition 5
([22]). The non-linearity of a Boolean function f BLF n is the minimum Hamming distance from f to all affine functions defined over F 2 n . Formally, it is expressed as
NL ( f ) : = min { dis ( f , f ˜ ) : f ˜ A n } ,
where A n denotes the set of all affine functions over F 2 n , and  dis ( f , f ˜ ) represents the Hamming distance between f and f ˜ .
Theorem 3
([22]). An n-variable quadratic Boolean function (QBF) f is balanced if and only if there exists a vector b F 2 n for which D b f ( x ) = 1 holds.
Theorem 4
([24]). A Boolean function f BLF n attains algebraic degree n if and only if its Hamming weight turns out to be an odd number.
Before proceeding to the main results, we introduce a new concept that will be instrumental in the subsequent analysis. While the notion of linear structures of Boolean functions is well established, we define a special case, which we refer to as a unit linear structure. This concept plays a central role in characterizing certain classes of balanced Boolean functions considered later in this paper. To the best of our knowledge, this terminology and its formal definition have not been previously explored in the literature.
Definition 6
(Unit Linear Structure). An element c F 2 n is said to be a unit linear structure of an n-variable Boolean function f if the derivative of f in the direction c satisfies
D c f ( x ) = 1 f o r a l l x F 2 n .
The set of all unit linear structures of f is denoted by E f 1 .
Furthermore, we denote by BLF n 1 the set of all n-variable Boolean functions that admit at least one unit linear structure.

3. Algebraic Degrees of Boolean Functions: Novel Results and Computation Approach

In this section, we present new results on the algebraic degree, extending the findings discussed in [24]. In addition, we introduce an alternative method of computing the algebraic degree that maintains the same complexity as the Fast Binary Möbius Transform, yet determines the degree without requiring knowledge of the algebraic normal form ( ANF ). This makes the method particularly useful for the quick estimation of the algebraic degree in Boolean functions with a small number of variables.
Theorem 5.
Any Boolean function f = J P ( ) a J x J BLF n has algebraic degree n d , where d is some positive integer such that d < n , if and only if
(a) 
f has an even weight; 
(b) 
there exists δ , with  | δ | = d , such that | { x S u p p ( f ) : x k = 0 f o r a l l k δ } | is odd; and 
(c) 
there does not exist σ , with  | σ | < d , such that | { x S u p p ( f ) : x k = 0 f o r a l l k σ } | is odd.
Proof. 
For the forward part, assume that the algebraic degree of f = J P ( ) a J x J is n d . Then, we show the following:
(a)
Using Theorem 4, we find that the weight of f is even.
(b)
The algebraic degree of f is n d , so the ANF of f has a monomial of degree n d . Let x i 1 x i 2 x i n d be this monomial, where i j = σ ( j ) for some σ S ( ) . Consequently, for  J = { i 1 , i 2 , , i n d } , we have
a J = x F 2 n S u p p ( x ) J f ( x ) = 1
or
a J = x F 2 n x i n d + 1 = x i n d + 2 = = x i n = 0 f ( x ) = 1
or
| { x F 2 n : x i n d + 1 = x i n d + 2 = = x i n = 0 and f ( x ) = 1 } | is odd
or
| { x S u p p ( f ) : x i n d + 1 = x i n d + 2 = = x i n = 0 } | is odd .
Thus, if we let δ = { i 1 , i 2 , , i n d } , then we have
| { x S u p p ( f ) : x k = 0 f o r a l l k δ } | is odd .
This means that ( b ) holds.
(c)
Suppose that there exists σ , with  | σ | < d , such that | { x S u p p ( f ) : x k = 0 f o r a l l k σ } | is odd. Then, we have
a σ = x F 2 n S u p p ( x ) σ f ( x ) = 1 with | σ | > n d .
This implies that f has an algebraic degree greater than n d . This is a contradiction to our assumption. Therefore, there does not exist σ , with  | σ | < d , such that | { x S u p p ( f ) : x k = 0 f o r a l l k σ } | is odd.
Conversely, suppose that conditions ( a ) ( c ) hold. This, along with Theorem 4, implies that ALG d ( f ) < n . Moreover, from part (b), we have
a δ = x F 2 n S u p p ( x ) δ f ( x ) is odd a δ 0 .
This leads to ALG d ( f ) n d . Additionally, from part (c), we know that there does not exist σ , with  | σ | < d , and  | { x S u p p ( f ) : x k = 0 f o r a l l k σ } | is odd. So, ALG d ( f ) n d . Thus, we conclude that ALG d ( f ) is n d .    □
Next, we prove a result that can be used to find the algebraic degrees of BFs without obtaining their algebraic normal forms. This result appears to be a straightforward case of Theorem 5; however, it is not.
Proposition 1.
Let f be a Boolean function with an even Hamming weight. Then, f possesses algebraic degree n d , where 1 d < n , if and only if the following conditions are satisfied:
(a) 
There exists a reordering i 1 , i 2 , , i n of the integers 1 , 2 , , n such that the set
A i 1 , i 2 , , i d : = { x F 2 n : f ( x ) = x i n d + 1 = x i n d + 2 = = x i n = 1 }
has odd cardinality, or the restriction of f on F 2 n ( A i 1 , i 2 , , i d B ) has an even Hamming weight, where B = { x F 2 n : f ( x ) = 1 a n d x j = 0 f o r a l l j { i n d + 1 , i n d + 2 , , i n } } .
(b) 
For all permutations i 1 , i 2 , , i n of the integers 1 , 2 , , n , the set
A i 1 , i 2 , , i k = { x F 2 n : f ( x ) = x i n k + 1 = x i n k + 2 = = x i n = 1 }
has even cardinality for all k < d .
Proof. 
Assume that the Boolean function f has an algebraic degree equal to n d and let ANF ( f ) = J P ( ) a J x J . This further implies that the ANF of f has a monomial of degree n d , and all the monomials of degrees greater than n d have zero coefficients. Let x i 1 x i 2 x i n d be the monomial with coefficient 1, where i j = σ ( j ) for some σ S ( ) . Then, for  J = { i 1 , i 2 , , i n d } , we have
x F 2 n S u p p ( x ) J f ( x ) = x F 2 n x i n d + 1 = x i n d + 2 = = x i n = 0 f ( x ) = 1 .
Moreover, the algebraic degree of f is n d and its ANF has a monomial x i 1 x i 2 x i n d . So, we may suppose that
f ( x 1 , x 2 , , x n ) = g ( x i 1 , x i 2 , , x i n d ) h ( x 1 , x 2 , , x n ) ,
where g ( x i 1 , x i 2 , , x i n d ) is the restriction of f on F 2 n { x F 2 n : x j = 0 for all j { i n d + 1 , i n d + 2 , , i n } } . Consequently, h ( x 1 , x 2 , , x n ) = 0 for all ( x 1 , x 2 , , x n ) F 2 n { x F 2 n : x j = 0 for all j { i n d + 1 , i n d + 2 , , i n } } , since the ANF of g does not contain any monomials with an ANF of f that contain x ˜ { x i n d + 1 , x i n d + 2 , , x i n } . So, for any x , y F 2 n with x i j = y i j for all j { 1 , 2 , , n d } , we have g ( x ) = g ( y ) . Thus, if we consider g ( x ) and h ( x ) as two BFs on { x F 2 n : x i n d + 1 = x i n d + 2 = , x i n = 1 } , then the algebraic degrees of g and h are n d and n 0 (where n 0 < n d ), respectively. So, using Theorem 4, the Hamming weight of g is odd and that of h is even. This further implies that f = g h has an odd Hamming weight on { x F 2 n : x i n d + 1 = x i n d + 2 = x i n = 1 } or A i 1 , i 2 , , i d has odd cardinality (as, if A g h = { x F 2 n : g ( x ) = h ( x ) = 1 } , then W H ( f = g h ) = W H ( g ) + W H ( h ) 2 | A g h | ).
Moreover, there holds
{ x F 2 n : f ( x ) = 1 } = A i 1 , i 2 , , i d B F 2 n ( A i 1 , i 2 , , i d B ) .
As the weight of f is even, this, along with (7), implies that f has an even Hamming weight on F 2 n ( A i 1 , i 2 , , i d B ) . This completes the proof of part (a).
Now, we show part (b). Suppose that there exists a rearrangement i 1 , i 2 , , i n of the elements 1 , 2 , , n such that the set
A i 1 , i 2 , , i k = { x F 2 n : f ( x ) = x i n k + 1 = x i n k + 2 = = x i n = 1 }
has odd cardinality for some k < d . Let f ˜ be the restriction of f on A i 1 , i 2 , , i k . Then, using a structure-transferring map, we may consider f ˜ as a Boolean function on F 2 n k . This, along with (8), implies that
x F 2 n k f ˜ ( x ) 0 .
Moreover, Theorem 4 along with (9) implies that ALG d ( f ˜ ) is n k . This means that ALG d ( f ) n k . However, k < d and the algebraic degree of f is n d . This is a contradiction. Therefore, there does not exist a rearrangement i 1 , i 2 , , i n of the elements 1 , 2 , , n such that the set given in (8) has odd cardinality for some k < d . This completes the proof of part (b).
Conversely, suppose that conditions (a) and (b) are met. Then, part (a) implies that there exists a permutation i 1 , i 2 , , i n of the integers 1 , 2 , , n such that the set
A i 1 , i 2 , , i d : = { x F 2 n : f ( x ) = x i n d + 1 = x i n d + 2 = = x i n = 1 }
has odd cardinality. By employing the technique incorporated in part (b), we note that ALG d ( f ) n d . On the other hand, part (b) implies that ALG d ( f ) < n k for all k < d . Thus, we conclude that ALG d ( f ) = n d .    □
Next, we present a result that can be applied to obtain the ANF of a Boolean function whose Hamming weight is even.
Proposition 2.
Let f BLF n have ANF ( f ) = J P ( ) a J x J , and let the weight of f be even. Then, for every J P ( ) , we have
a J = x F 2 n S u p p ( x ) J 1 = J 1 S u p p ( x ) J 2 = ϕ f ( x ) ,
where J 1 and J 1 are any two sets such that J c = J = J 1 J 2 .
Proof. 
Suppose that J = { i 1 , i 2 , , i n k } for some permutation i 1 , i 2 , , i n of the integers 1 , 2 , , n and k n . Using part (a) of Proposition 1, it can be easily shown that
a J = x F 2 n S u p p ( x ) J 1 = J 1 S u p p ( x ) J 2 = ϕ f ( x ) .
Hence, the proof is completed.    □
The corollary stated below directly follows as a consequence of Proposition 2.
Corollary 1.
Let f BLF n have ANF ( f ) = J P ( ) a J x J , and let the weight of f be even. Then, for each J P ( ) , we have
a J = x F 2 n S u p p ( x ) J c = J c f ( x ) .
Next, with the help of Proposition 2, we discuss an efficient alternative procedure to determine the algebraic degrees of BFs without knowing their ANF . This algorithm (i.e., Algorithm 1) has complexity O ( n · 2 n ) , which is the same as that of the Fast Binary Möbius Transform [22]. However, our algorithm offers the advantage of determining the algebraic degree without computing the ANF , making it particularly effective for the quick or off-hand computation of the algebraic degree for functions with a small number of variables.
To this end, we describe some notations before we discuss the algorithm. Let x , y F 2 n and i 1 , i 2 , , i n be a permutation of the integers 1 , 2 , , n . We say that x is a k-layer related to y with respect to the positions i 1 , i 2 , , i k if x i 1 = x i 2 = = x i k = y i 1 = y i 2 = = y i k = 1 . The set of all these elements will be denoted by A k l i 1 , i 2 , , i k . For any f BLF n , the set of elements A k l i 1 , i 2 , , i k S u p p ( f ) is denoted by A f k l i 1 , i 2 , , i k .
Algorithm 1 An algorithm to compute the algebraic degrees of BFs
1:
If | S u p p ( f ) | is odd, then, from Theorem 4, ALG d ( f ) = n . Go to step 5.
2:
Compute A f k l i t , for k = 1 and t { 1 , 2 , , n } , until we get t 0 { 1 , 2 , , n } (if exists) such that | A f k l i t 0 | is odd. Then, ALG d ( f ) is n 1 . Go to step 5.
3:
Compute A f k l i t 1 , i t 2 , for k = 2 and t 1 , t 2 { 1 , 2 , , n } , until we get t 1 , t 2 { 1 , 2 , , n } (if exists)
such that | A f k l i t 1 , i t 2 | is odd. Then, ALG d ( f ) is n 2 . Go to step 5.
4:
Continue until a subset S = { t 1 , t 2 , t s } , where 1 s n , of { 1 , 2 , , n } is obtained such that | A f k l i t 1 , i t 2 , , i t s | is odd. Then, ALG d ( f ) is n s . Go to step 5.
5:
End.
To show the practicality of Algorithm 1, we consider three BFs, each containing four variables, and deduce their algebraic degrees.
Example 1
(Algebraic degrees of Boolean functions). Consider three BFs f , g a n d h on F 2 4 , whose truth tables are given in Table 1. Then, we have
S u p p ( f ) = { 0001 , 0100 , 0111 , 1011 , 1110 , 1111 } , S u p p ( g ) = { 0001 , 0011 , 0100 , 0110 , 1001 , 1010 , 1100 , 1111 } a n d S u p p ( h ) = { 0001 , 0010 , 0100 , 0111 , 1000 , 1011 , 1101 , 1110 } .
Using these, we get
A f 1 l 1 = { 1011 , 1110 , 1111 } a n d x 0 x A f 1 l 1 = 1 1 1 0 ,
A g 1 l 1 = { 1001 , 1010 , 1100 , 1111 } a n d x 0 x A g 1 l 1 = 1 1 1 1 = 0 ,
A g 1 l 2 = { 0100 , 0110 , 1100 , 1111 } a n d x 0 x A g 1 l 2 = 1 1 1 1 = 0 ,
A g 1 l 3 = { 0011 , 0110 , 1010 , 1111 } a n d x 0 x A g 1 l 3 = 1 1 1 1 = 0 ,
A g 1 l 4 = { 0001 , 0011 , 1001 , 1111 } a n d x 0 x A g 1 l 4 = 1 1 1 1 = 0 ,
A g 2 l 1 , 2 = { 1100 , 1111 } a n d x 0 x A g 2 l 1 , 2 = 1 1 = 0 ,
A g 2 l 2 , 4 = { 1111 } a n d x 0 x A g 2 l 2 , 4 = 1 0 .
Similarly, we have
x 0 x A h 1 l 1 = = x 0 x A h 1 l 4 = x 0 x A h 2 l 1 , 2 = x 0 x A h 2 l 1 , 3 = x 0 x A h 2 l 1 , 4 = x 0 x A h 2 l 2 , 3 = x 0 x A h 2 l 2 , 4 = x 0 x A h 2 l 3 , 4 = 0 ,
and
A h 3 l 1 , 2 , 3 = { 1110 } a n d x 0 x A h 3 l 1 , 2 , 3 = 1 0 .
Thus, using (10)–(12) and Algorithm 1, we note that the algebraic degrees of f, g and h are 3, 2 and 1, respectively. Clearly, we have not used the ANF s of f , g and h to compute their algebraic degrees.

4. Balanced Boolean Functions: Structural Insights and New Characterizations

This section is devoted to exploring some new findings related to the balancedness of BFs. We begin by discussing two important results (Propositions 3 and 4) related to the support of a balanced Boolean function. Apart from this, we discuss a very interesting result in the form of Proposition 5, which is novel and very interesting from a linear algebra point of view and will be used in Proposition 6.
Proposition 3.
Let f BLF n be a balanced Boolean function such that f BLF n 1 . Then, S u p p ( f ) is not a subspace of F 2 n .
Proof. 
For the sake of contradiction, let us suppose that S u p p ( f ) is a subspace of F 2 n . Then, it is a hyperplane, e.g., H. Thus, we have F 2 n = H ( b + H ) , for some b H . Consequently, we have
f ( x ) + f ( x + b ) = 1 , for all x F 2 n ,
since x and x + b cannot be both in H ( or in b + H ) . This in turn implies that f BLF n 1 , which is a contradiction. So, S u p p ( f ) is not a subspace of F 2 n . This completes the result.    □
The following example illustrates that the converse of Proposition 3 is not valid.
Example 2.
Let f be a balanced Boolean function on F 2 4 such that
S u p p ( f ) = { 0000 , 0001 , 0010 , 0011 , 0100 , 0110 , 0111 , 1000 } .
We note that 0010 and 0111 are elements of S u p p ( f ) , but 0010 + 0111 = 0101 S u p p ( f ) . This implies that S u p p ( f ) is not a subspace of F 2 4 . If we take b = 1101 , then we have
b + S u p p ( f ) = { b + x : x S u p p ( f ) } = { 1101 , 1100 , 1111 , 1110 , 1001 , 1011 , 1010 , 0101 } .
To this end, we observe that ( b + S u p p ( f ) ) S u p p ( f ) = , which further implies that f BLF n 1 .
Proposition 4.
Let f BLF n be a balanced Boolean function such that f BLF n 1 . Then, S u p p ( f ) contains a set of n linearly independent vectors and
i = 1 2 n 1 ( x i + S u p p ( f ) ) = F 2 n ,
where x 1 , x 2 , , x 2 n 1 S u p p ( f ) .
Proof. 
Let Ω be the set of maximum linearly independent vectors in S u p p ( f ) . If | Ω | < n , then we have the following cases:
(a)
| Ω | < n 1 , or 
(b)
| Ω | = n 1 .
If (a) holds, then f is not balanced, and, if (b) holds, then S u p p ( f ) must be a subspace of F 2 n . However, from Proposition 3, if  f BLF n 1 , then S u p p ( f ) is not a subspace of F 2 n . So, in both cases, we have a contradiction. Consequently, we must have that | Ω | = n . Moreover, as  f BLF n 1 , we have
( a + S u p p ( f ) ) S u p p ( f ) .
Let b F 2 n be an arbitrary element. Then, from (13), we obtain ( b + S u p p ( f ) ) S u p p ( f ) . This further implies that b + x = y for some x , y S u p p ( f ) . So, F 2 n i = 1 2 n 1 ( x i + S u p p ( f ) ) and hence the result holds.    □
The next key result of our work, namely Proposition 6, provides a sufficient condition under which a Boolean function is balanced. To establish this, we first require the following preliminary result.
Proposition 5.
Let V and W be two subsets of F 2 n such that
(a) 
V W = F 2 n ;
(b) 
0 V and V W = ; and
(c) 
there exists a unique element b W such that b x + y for all x , y V .
Then, there do not exist c , d W such that b = c + d .
Proof. 
Let X = V { 0 } and Y = W { b } . From condition (c), if  z Y , then there exist x , y V such that z = x + y (as b is the only element in W which cannot be expressed as the sum of two elements from V). In this case, neither x nor y is zero as V W = . In order to prove the result, we need to show that | V | = | W | . We note that, if x V , then b + x V (as b = x + ( b + x ) , since Char( F 2 ) = 2). Here, Char denotes the characteristics of a field. Consequently, we define a map θ as follows:
θ : V W given by θ ( x ) = b + x for all x V .
It is straightforward to see that θ is one–one. We note that | V | = | W | holds, provided that θ is an onto map. We take V 0 = { 0 } and W 0 = { b } . If F 2 n = V 0 W 0 , then θ is trivially onto. Next, we assume F 2 n V 0 W 0 . For i 1 , let us construct V i V and W i W , each having 3 elements. To this end, we claim that V V 0 . Let, on the contrary, V = V 0 , and we take x F 2 n V 0 W 0 . This means that x W . As  0 x b and V contains only a zero element, we deduce that x is not the sum of any two elements from V. However, this is a contradiction to condition ( c ) . Therefore, our claim holds, i.e.,  V V 0 . Let x 1 V V 0 . This means that b + x 1 W . It follows from condition ( c ) that there exist y 1 , z 1 V satisfying b + x 1 = y 1 + z 1 . We note that, if y 1 = x 1 , then b = z 1 V , which is not possible. Similarly, we have that z 1 x 1 . Moreover, if  y 1 = z 1 , then b = x 1 V , which is again not possible. Consequently, we find that x 1 , y 1 and z 1 are three distinct elements of V. We take V 1 = { x 1 , y 1 , z 1 } and W 1 = { b + x 1 , b + y 1 , b + z 1 } . We observe that
b + x 1 = y 1 + z 1 , b + y 1 = z 1 + x 1 and b + z 1 = x 1 + y 1 .
If F 2 n = i = 0 1 ( V i W i ) , then V = i = 0 1 V i and W = i = 0 1 W i and, therefore, we are done. Otherwise, we have F 2 n i = 0 1 ( V i W i ) . At this point, we claim that V i = 0 1 V i . Let, on the contrary, V = i = 0 1 V i and x F 2 n i = 0 1 ( V i W i ) . This means that x W . Clearly, as  x i = 1 1 W i = { b , b + x 1 , b + y 1 , b + z 1 } , (14) allows us to deduce that x cannot be the sum of two elements from V = { 0 , x 1 , y 1 , z 1 } . This is a contradiction to condition ( c ) . Therefore, our claim holds, i.e.,  V i = 0 1 V i . Let x 2 V i = 0 1 V i . This implies that b + x 2 W and x 2 { 0 , x 1 , y 1 , z 1 } . This guarantees the existence of y 2 , z 2 V , fulfilling b + x 2 = y 2 + z 2 . If  y 2 = x 2 , then b = x 2 V , which is a contradiction. Similarly, we observe that z 2 x 2 . Moreover, if  y 2 = z 2 , then b = x 2 V , which is not possible. Consequently, x 2 , y 2 and z 2 are three distinct elements of V. We put V 2 = { x 2 , y 2 , z 2 } and W 2 = { b + x 2 , b + y 2 , b + z 2 } . Thus, we have the following possibilities:
(i) 
If V 2 has an element x 2 different from the elements of V 0 V 1 , then there exists an element b + x 2 W 2 corresponding to the element x 2 with the condition that b + x 2 W 0 W 1 . This is because the map θ is one–one.
(ii) 
If V 2 had two (or three) different elements from V 0 V 1 , then, by the same logic, W 2 would also have two (or three) different elements from W 0 W 1 .
Thus, with the increase in the index i of V i , we obtain one or two or three elements of F 2 n that are not in the previous V i s. The same is the case with W i s due to the one–one property of θ . Since n is finite, there must exist a k N such that F 2 n = i = 0 k ( V i W i ) . Additionally, we note that | i = 0 k V i | = | i = 0 k W i | . This confirms that θ is onto, which means that | V | = | W | . Finally, we assume that, for some c , d W , we have b = c + d . As  θ is onto, there exist x , y V such that c = b + x and d = b + y . Hence, b = c + d = x + y , which goes against the assumption that b is unique. Hence, the result is complete.    □
To conclude this section, we establish the principal result concerning the characterization of a balanced Boolean function.
Proposition 6.
Let f BLF n be such that f ( 0 ) = 1 , and there exists a unique element b F 2 n S u p p ( f ) such that b c + d for all c , d S u p p ( f ) . Then, f is a balanced Boolean function.
Proof. 
Let A = S u p p ( f ) = { x F 2 n : f ( x ) = 1 } , B = { b + x : x A } and B = F 2 n A . Then, | A | = | B | as b + x 1 = b + x 2 if and only if x 1 = x 2 . Moreover, if there exists y B such that y A , then b = x + y for some x , y A . So, there does not exist any y B such that y A . This implies that B B and | B | | B | . If | B | = | B | , then clearly f is a balanced function. Otherwise, let | B | < | B | . However, then, there exists z B such that
z B
or
z b + x for all x A
or
z = b + t for some t A
(since z = b + t for some t F 2 n and , if t A , then we have a contradiction ) or
b = z + t for some z , t B .
However, this is a contradiction to Proposition 5. So, we have | B | = | B | , and f is a balanced Boolean function. This completes the proof.    □

5. A Revisit to a Subclass of Affine Equivalent Boolean Functions and the Construction of a Special Kind of Balanced Boolean Function

It has been established in [25,26,27] that affine equivalent Boolean functions (BFs) share important invariance properties, such as non-linearity, autocorrelation, algebraic degrees, and the absence of unit linear structures. Therefore, identifying criteria for affine equivalence or developing efficient tools to characterize such equivalence is a significant aspect of Boolean function analysis. Several criteria for determining affine equivalence have been discussed in the literature [9]. In this section, one of our aims is to revisit these criteria and derive them through alternative and simpler approaches. Specifically, we construct a subclass of affine equivalent BFs and demonstrate that all members of this subclass preserve the properties mentioned above. Consequently, from the perspective of affine equivalence, we offer new and simplified proofs of known results.
Non-quadratic balanced Boolean functions with no linear structure where the derivative equals 1 are known to have significant applications in cryptography [9,22]. For quadratic functions, it is both necessary and sufficient that f BLF n 1 for f to be balanced, as shown in [9]. However, for non-quadratic BFs, this condition remains sufficient but not necessary. To construct a non-quadratic Boolean function f such that f BLF n 1 , we consider a non-quadratic function g defined over n 1 variables and choose a hyperplane H F 2 n . We then define a linear bijection ϕ : H F 2 n 1 and construct f on H using f ( x ) = g ( ϕ ( x ) ) . The values of f on the rest of F 2 n are then extended by defining f ( x + b ) = f ( x ) + 1 for every x H , where b is not in the direction of H . This yields a balanced function that lies in BLF n 1 .
On the other hand, to the best of our knowledge, no construction is known in the literature for a non-quadratic balanced Boolean function f satisfying f BLF n 1 . Therefore, another objective of this section is to present an algorithm that generates such functions—that is, non-quadratic balanced Boolean functions without any unit linear structure at which the derivative equals 1.
Before this, let us define some new terms that are necessary to comprehend our findings. For any A F 2 n , let m a t r i x ( A ) be the matrix of order | A | × n , obtained by assuming the elements of A as a row in lexicographic order, where bits with greater significance are placed towards the right. Let s e t ( B ) be the set of all rows of matrix B . If f BLF n and H is any square matrix of order n over F 2 , then, by f H , we mean the n variable Boolean function with S u p p ( f H ) = set ( matrix ( S u p p ( f ) ) H ) (and ⊠ is the matrix product). From this point on, we call this f H the H equivalent of f. Additionally, in the following part of this article, by  E f H , we mean the set of rows of matrix ( E f ) H . We begin the section by showing that, for any f BLF n and H GL ( n , F 2 ) , f and f H have the same non-linearity.

5.1. Novel Results on Affine Equivalence of Boolean Functions

In this subsection, we revisit known results on the cryptographic properties of Boolean functions and derive them using alternative and simpler approaches.
Theorem 6.
For any Boolean function f BLF n and H GL ( n , F 2 ) , there holds NL ( f ) = NL ( f H ) , where NL ( f ) is the same as defined in Definition 5.
Proof. 
In order to prove that NL ( f ) = NL ( f H ) for any Boolean function f BLF n and H GL ( n , F 2 ) , it is sufficient to give the following statements:
(a)
If f A n , then f H A n for all H GL ( n , F 2 ) ;
(b)
If d i s ( f , f ˜ ) = t for some f ˜ BLF n and f A n , then d i s ( f H , f ˜ H ) = t for all H GL ( n , F 2 ) .
Let us begin by proving statement ( a ) . Suppose that f A n is a linear function and f ( x ) = a x t for some a F 2 n (here, x t is a transpose of x = ( x 1 , x 2 , , x n ) F 2 n ). Let matrix ( S u p p ( f ) ) = A 2 n 1 × n (or simply A ) and H GL ( n , F 2 ) . Then, there exists some Boolean function g such that S u p p ( g ) = set ( A H ) . Consider h ( x ) = ( a ( H t ) 1 ) x t BLF n . At this point, we claim that g = h or S u p p ( h ) = set ( A H ) . To prove our claim, we consider y S u p p ( h ) . This means that a ( H t ) 1 y t = 1 = a [ ( y H 1 ) t ] . Consequently, y H 1 S u p p ( f ) , which further implies that y H 1 is a row of A . In other words, we deduce that y is a matrix multiplication of a row of A with H. From this, we conclude that y set ( A H ) . So, we have shown that S u p p ( h ) set ( A H ) .
The reverse direction, i.e.,  set ( A H ) S u p p ( h ) , can be proven along similar lines. Hence, our claim holds, i.e.,  set ( A H ) = S u p p ( h ) . The proof of statement ( a ) will be completed if we show that f H A n for all H GL ( n , F 2 ) , where f ( x ) A n is of the form f ( x ) = a x t 1 . We remark that its proof is similar to the case when f ( x ) is of the form f ( x ) = a x t .
Next, we give the proof of statement (b). It is straightforward to note that statement ( b ) holds if we prove that, for all f ˜ , f BLF n , there holds W H ( f f ˜ ) = W H ( f H f ˜ H ) , where H G L ( n , F 2 ) is arbitrary. Since W H ( f f ˜ ) = | S u p p ( f f ˜ ) | = | S u p p ( f f ˜ ) H | for any H G L ( n , F 2 ) , statement ( b ) holds, provided that | S u p p ( f f ˜ ) H | = | S u p p ( f H f ˜ H ) | for any H G L ( n , F 2 ) .
To see this, let H be an arbitrary but fixed element of G L ( n , F 2 ) . We may write H as
H = [ ¯ R 1 ¯ ¯ R 2 ¯                                   ¯ R n ¯ ] ,
where R 1 , R 2 , , R n are rows of H . Let x S u p p ( f f ˜ ) H . This in turn guarantees the existence of an element y = ( y 1 , y 2 , , y n ) S u p p ( f f ˜ ) fulfilling
y 1 R 1 + y 2 R 2 + + y n R n = x .
Since y S u p p ( f f ˜ ) , we conclude that either ( f ( y ) , f ˜ ( y ) ) = ( 0 , 1 ) or ( f ( y ) , f ˜ ( y ) ) = ( 1 , 0 ) . Without loss of generality, we may suppose that ( f ( y ) , f ˜ ( y ) ) = ( 0 , 1 ) . This allows us to deduce that x = y 1 R 1 + y 2 R 2 + + y n R n S u p p ( f H ) and x = y 1 R 1 + y 2 R 2 + + y n R n S u p p ( f ˜ H ) . Consequently, we have S u p p ( f f ˜ ) H S u p p ( f H f ˜ H ) . We remark that the reverse part of the proof, i.e.,  S u p p ( f H f ˜ H ) S u p p ( f f ˜ ) H , can be obtained by reversing the steps of the proof of S u p p ( f f ˜ ) H S u p p ( f H f ˜ H ) . This completes the proof of statement ( b ) , as well as that of the theorem.    □
Next, in Theorem 7, we prove a result about the algebraic degrees of a Boolean function and its H equivalent. Before this, we discuss two results in the form of Propositions 7 and 8, which will be used in the proof of Theorem 7.
Proposition 7.
Let { h 1 , h 2 , , h d } F 2 n be a linearly independent set over F 2 . Suppose that
R [ x 1 , x 2 , , x n ] = F 2 [ x 1 , x 2 , , x n ] x 1 2 x 1 , x 2 2 x 2 , , x n 2 x n
and x = ( x 1 , x 2 , , x n ) R n . Then, viewing ( x · h 1 ) ( x · h 2 ) ( x · h d ) as a polynomial in R , there holds
deg ( ( x · h 1 ) ( x · h 2 ) ( x · h d ) ) = d .
Proof. 
First, since each x · h j is a linear polynomial, multiplying d of these linear polynomials results in the polynomial with maximum degree d. Secondly, since { h 1 , h 2 , , h d } is a linearly independent set of vectors, the matrix obtained by assuming h 1 , h 2 , , h d as rows over F 2 has rank d. Thus, there exist indices i 1 , i 2 , , i d for which the sub-matrix
D = h 1 , i 1 h 1 , i 2 h 1 , i d h 2 , i 1 h 2 , i 2 h 2 , i d h d , i 1 h d , i 2 h d , i d
is non-singular over F 2 . In particular, det ( D ) = 1 . Since x i 1 h j , i 1 + x i 2 h j , i 2 + + x i d h j , i d is a sub-polynomial in ( x · h j ) for all 1 j d , it is easy to observe that ( x i 1 x i 2 x i d ) det ( D ) is a sub-polynomial in ( x · h 1 ) ( x · h 2 ) ( x · h d ) . Hence, x i 1 x i 2 x i d is a monomial in ( x · h 1 ) ( x · h 2 ) ( x · h d ) . This completes the proof.    □
Proposition 8.
Let f BLF n and let S u p p ( f ) = { x F 2 n : f ( x ) = 1 } be its support. Then, for all x F 2 n , we have
f H ( x ) = f x H 1 .
Proof. 
Since, for any x F 2 n , f H ( x ) = 1 holds, if and only if x S u p p ( f H ) , if and only if x m a t r i x ( S u p p ( f ) ) H , if and only if x H 1 S u p p ( f ) , if and only if f ( x H 1 ) = 1 . Hence, the proof is complete.    □
Remark 1.
It is clear from Proposition 8 that f and f H have the same autocorrelation as
C f H ( b ) = x F 2 n ( 1 ) D b f H ( x ) = x F 2 n ( 1 ) f ( x H 1 ) f ( x H 1 + b H 1 ) = C f ( b H 1 ) .
So, we have AC f = m a x b F 2 n 0 | C f ( b ) | = AC f H .
Theorem 7.
For any Boolean function f BLF n and H GL ( n , F 2 ) , ALG d ( f ) = ALG d ( f H ) .
Proof. 
Assuming that ALG d ( f ) = d , our aim is to show that ALG d ( f H ) = d . For this, without loss of generality, we assume that x 1 x 2 x d is a monomial in the algebraic normal form of f. By following Proposition 8, we note that
f H ( x 1 , x 2 , , x n ) = f ( x 1 x 2 x n ) H 1 = f x H 1 .
Let the columns of the matrix H 1 be h 1 , h 2 , , h n . Clearly, the set of all these columns is linearly independent over F 2 . In particular, the first d columns, namely h 1 , h 2 , , h d , are also linearly independent over F 2 . It follows from (16) that
f H ( x 1 , x 2 , , x n ) = f x · h 1 , x · h 2 , , x · h n .
By assumption, the monomial x 1 x 2 x d is in the algebraic normal form of f; therefore, (17) implies that the monomial ( x · h 1 ) ( x · h 2 ) ( x · h d ) is in the algebraic normal form of f H . Therefore, it follows by Proposition 7 that the degree of ( x · h 1 ) ( x · h 2 ) ( x · h d ) and hence the algebraic degree of f H is d. Conversely, we assume that f H = g . Thus, f = g H 1 , and the result follows as above.    □
Next, we examine how the set of linear structures of f relates to its H-equivalent counterpart through the upcoming proposition and theorem.
Proposition 9.
For a Boolean function f BLF n and H GL ( n , F 2 ) , we have E f H = E f H .
Proof. 
We have a E f H if and only if D a f H ( x ) = c for every x F 2 n , where c is some constant. The latter holds if and only if f H ( x ) f H ( a + x ) = c for every x F 2 n , if and only if f ( x H 1 ) f ( a H 1 + x H 1 ) = c for every x F 2 n ; equivalently, f ( x ) f ( a H 1 + x ) = c for every x F 2 n . This holds if and only if D a H 1 f ( x ) = c for every x F 2 n , which means that a H 1 E f or a E f H . This completes the proof.    □
Theorem 8.
For any Boolean function f BLF n , if f is constant on E f , then f H is constant on E f H .
Proof. 
Let f be constant on E f . Then, for any x y E f H , we have f H ( x ) = f H ( y ) if and only if
f ( x H 1 ) = f ( y H 1 ) .
Using Proposition 9, x = x H and y = y H for some x and y E f in (18) to attain that f ( x ) = f ( y ) , and this is vacuously true. This completes the proof.    □

5.2. Construction of NQBBFs

Now, we discuss an algorithm for the construction of non-quadratic balanced BFs that have no linear structure at which the derivative is equal to 1. It can be readily observed that the construction of such BFs is equivalent to finding a subset B of F 2 n such that B ( b + B ) for every b F 2 n and | B | = 2 n 1 . Let us denote F 2 n * = F 2 n 0 .   
Claim: 
The set B constructed in the above algorithm satisfies the desired property, i.e.,  B ( b + B ) for every b F 2 n .
Proof. 
Suppose, on the contrary, that there exists a b F 2 n such that ( b + B ) B = . This means that ( b + B ) B = F 2 n , since | B | = 2 n 1 . Therefore, either b B or b b + B . In the latter case, i.e., if b b + B , then 0 B , which, by construction, is never possible. Hence, b B , but this implies that b = a 1 + a 2 for some a 1 , a 2 B . Equivalently, b = a 1 + a 2 for some a 1 , a 2 F 2 n * B or, in fact, b = a 1 + a 2 for some a 1 , a 2 ( b + B ) 0 . However, this further implies that b = a 1 + a 3 + b for some a 1 ( b + B ) 0 and a 3 B (we explicitly write a 2 = a 3 + b and keep a 1 as it is). Consequently, a 1 + a 3 = 0 a 1 = a 3 for a 1 b + B 0 and a 3 B , which is a contradiction as ( b + B ) B = . This proves the claim. Therefore, B ( b + B ) for every b F 2 n .    □
Example 3
(Construction of a Non-Quadratic Balanced Boolean Function for n = 4 ). We illustrate Algorithm 2 by constructing a non-quadratic balanced Boolean function (NQBBF) on F 2 4 with no linear structure where the derivative equals 1. The set B F 2 4 is constructed to satisfy B ( b + B ) for all b F 2 4 and | B | = 2 4 1 = 8 .
  • Let F 2 4 be the ambient space with 2 4 = 16 elements, and  F 2 4 * = F 2 4 { ( 0 , 0 , 0 , 0 ) } .
  • Initialization: Select x 1 = ( 0 , 0 , 1 , 1 ) , y 1 = ( 0 , 1 , 1 , 0 ) * F 2 4 . Compute z 1 = x 1 + y 1 = ( 0 , 0 , 1 , 1 ) + ( 0 , 1 , 1 , 0 ) = ( 0 , 1 , 0 , 1 ) . Set A 1 = { ( 0 , 0 , 1 , 1 ) , ( 0 , 1 , 1 , 0 ) , ( 0 , 1 , 0 , 1 ) } and
    B = { ( 0 , 1 , 0 , 1 ) } .
  • Iteration 1: Choose x 2 = ( 1 , 0 , 0 , 1 ) , y 2 = ( 0 , 0 , 0 , 1 ) * F 2 4 B . Compute z 2 = x 2 + y 2 = ( 1 , 0 , 0 , 1 ) + ( 0 , 0 , 0 , 1 ) = ( 1 , 0 , 0 , 0 ) A 1 . Update A 2 = { ( 1 , 0 , 0 , 1 ) , ( 0 , 0 , 0 , 1 ) , ( 1 , 0 , 0 , 0 ) } A 1 ,
    B = { ( 0 , 1 , 0 , 1 ) ( 1 , 0 , 0 , 0 ) } .
  • Iteration 2: Choose x 3 = ( 1 , 1 , 1 , 0 ) , y 3 = ( 0 , 0 , 1 , 0 ) * F 2 4 B . Compute z 3 = x 3 + y 3 = ( 1 , 1 , 1 , 0 ) + ( 0 , 0 , 1 , 0 ) = ( 1 , 1 , 0 , 0 ) A 2 . Update A 3 = { ( 1 , 1 , 1 , 0 ) , ( 0 , 0 , 1 , 0 ) , ( 1 , 1 , 0 , 0 ) } A 2 ,
    B = { ( 0 , 1 , 0 , 1 ) , ( 1 , 0 , 0 , 0 ) , ( 1 , 1 , 0 , 0 ) } .
  • Iteration 3: Choose x 4 = ( 1 , 0 , 1 , 0 ) , y 4 = ( 0 , 1 , 0 , 0 ) * F 2 4 B . Compute z 4 = x 4 + y 4 = ( 1 , 0 , 1 , 0 ) + ( 0 , 1 , 0 , 0 ) = ( 1 , 1 , 1 , 0 ) A 3 . Update A 4 = { ( 1 , 0 , 1 , 0 ) , ( 0 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 0 ) } A 3 ,
    B = { ( 0 , 1 , 0 , 1 ) , ( 1 , 0 , 0 , 0 ) , ( 1 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 0 ) } .
  • Iteration 4: Choose x 5 = ( 1 , 0 , 1 , 1 ) , y 5 = ( 0 , 0 , 0 , 1 ) * F 2 4 B . Compute z 5 = x 5 + y 5 = ( 1 , 0 , 1 , 1 ) + ( 0 , 0 , 0 , 1 ) = ( 1 , 0 , 1 , 0 ) A 4 . Update A 5 = { ( 1 , 0 , 1 , 1 ) , ( 0 , 0 , 0 , 1 ) , ( 1 , 0 , 1 , 0 ) } A 4 ,
    B = { ( 0 , 1 , 0 , 1 ) , ( 1 , 0 , 0 , 0 ) , ( 1 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 0 ) , ( 1 , 0 , 1 , 0 ) } .
  • Iteration 5: Choose x 6 = ( 0 , 1 , 1 , 1 ) , y 6 = ( 0 , 0 , 1 , 1 ) * F 2 4 B . Compute z 6 = x 6 + y 6 = ( 0 , 1 , 1 , 1 ) + ( 0 , 0 , 1 , 1 ) = ( 0 , 1 , 0 , 0 ) A 5 . Update A 6 = { ( 0 , 1 , 1 , 1 ) , ( 0 , 0 , 1 , 1 ) , ( 0 , 1 , 0 , 0 ) } A 5 ,
    B = { ( 0 , 1 , 0 , 1 ) , ( 1 , 0 , 0 , 0 ) , ( 1 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 0 ) , ( 1 , 0 , 1 , 0 ) , ( 0 , 1 , 0 , 0 ) } .
  • Iteration 6: Choose x 7 = ( 1 , 1 , 0 , 1 ) , y 7 = ( 0 , 0 , 1 , 0 ) * F 2 4 B . Compute z 7 = x 7 + y 7 = ( 1 , 1 , 0 , 1 ) + ( 0 , 0 , 1 , 0 ) = ( 1 , 1 , 1 , 1 ) A 6 . Update A 7 = { ( 1 , 1 , 0 , 1 ) , ( 0 , 0 , 1 , 0 ) , ( 1 , 1 , 1 , 1 ) } A 6 ,
    B = { ( 0 , 1 , 0 , 1 ) , ( 1 , 0 , 0 , 0 ) , ( 1 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 0 ) , ( 1 , 0 , 1 , 0 ) , ( 0 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 1 ) } .
  • Iteration 7: Choose x 8 = ( 0 , 1 , 1 , 0 ) , y 8 = ( 0 , 1 , 0 , 1 ) * F 2 4 B . Compute z 8 = x 8 + y 8 = ( 0 , 1 , 1 , 0 ) + ( 0 , 1 , 0 , 1 ) = ( 0 , 0 , 1 , 1 ) A 7 . Update A 8 = { ( 0 , 1 , 1 , 0 ) , ( 0 , 1 , 0 , 1 ) , ( 0 , 0 , 1 , 1 ) } A 7 ,
    B = { ( 0 , 1 , 0 , 1 ) , ( 1 , 0 , 0 , 0 ) , ( 1 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 0 ) , ( 1 , 0 , 1 , 0 ) , ( 0 , 1 , 0 , 0 ) , ( 1 , 1 , 1 , 1 ) , ( 0 , 0 , 1 , 1 ) } .
  • Balancedness: The set B has | B | = 8 = 2 4 1 , confirming that the Boolean function with support B is balanced.
  • No Linear Structure: For each b F 2 4 { ( 0 , 0 , 0 , 0 ) } , verify that B ( b + B ) . For example, for  b = ( 1 , 0 , 0 , 0 ) , compute
    b + B = { ( 1 , 1 , 0 , 1 ) , ( 0 , 0 , 0 , 0 ) , ( 0 , 1 , 0 , 0 ) , ( 0 , 1 , 1 , 0 ) , ( 0 , 0 , 1 , 0 ) , ( 1 , 1 , 0 , 0 ) , ( 0 , 1 , 1 , 1 ) , ( 1 , 0 , 1 , 1 ) } ,
    and B ( b + B ) = { ( 1 , 1 , 0 , 0 ) } . Similar checks for all other b * F 2 4 confirm that the property holds, ensuring that no linear structure exists where the derivative is 1.
  • Non-Quadratic Property: The Boolean function f with support B has an algebraic normal form (ANF) with terms of degree at least 3. For instance, the vector ( 0 , 1 , 0 , 1 ) B contributes a monomial x 2 x 4 (degree 2), but combinations of vectors in B (e.g., via the Möbius Transform) yield higher-degree terms, such as x 1 x 2 x 3 from interactions among ( 1 , 1 , 1 , 0 ) , ( 1 , 1 , 1 , 1 ) , and others. The maximum degree is 3, confirming that f is non-quadratic.
    Thus, the constructed B defines an NQBBF on F 2 4 satisfying all required properties.
Algorithm 2 Construction of a set B F 2 n with property B ( b + B ) , for every b F 2 n and | B | = 2 n 1
INPUT: An integer n
1:
Let A 1 = { x 1 , y 1 } F 2 n * be a random set with | A 1 | = 2 . Compute x 1 + y 1 and append this with A 1 . Thus, A 1 { x 1 , y 1 , x 1 + y 1 } .
2:
Initialize:  B { x 1 + y 1 } .
3:
Let A 2 = { x 2 , y 2 } F 2 n * B be a random set such that x 2 + y 2 A 1 and | A 2 | = 2 . Append x 2 + y 2 and elements of A 1 with A 2 .
Thus, A 2 { x 2 , y 2 , x 2 + y 2 } A 1 .
4:
Update B B { x 2 + y 2 } .
5:
While  | B | < 2 n 1 :
      A A A 2
     A 3 = { x 3 , y 3 } F 2 n * B be a random set such that x 3 + y 3 A 2 and | A 3 | = 2 . Append x 3 + y 3
      and elements of A 2 with A 3 .
      A 3 { x 3 , y 3 , x 3 + y 3 } A 2
      B B { x 3 + y 3 }
OUTPUT:  B .

5.3. Computational Complexity and Performance Evaluation

The proposed algorithm incrementally constructs a subset B F 2 n of size 2 n 1 such that, for every b F 2 n , the intersection B ( B + b ) is non-empty. Each iteration involves selecting random pairs ( x i , y i ) from F 2 n * , computing their sum x i + y i , and validating the newly formed element against the accumulated sets to avoid repetition. Since only one new element is added to B per iteration, the total number of iterations grows linearly with | B | = 2 n 1 .
The primary computational cost lies in generating random, valid pairs and checking their admissibility against the previously accumulated elements. As a result, the expected time complexity of the algorithm is O ( 2 n · T pair-check ) , where T pair-check denotes the average time needed to find a suitable, non-redundant pair at each iteration.
The space complexity is determined by the storage required for three dynamic sets: B , the set of previously seen pairs, and the remaining unused elements of F 2 n . Each of these has at most O ( 2 n ) elements, leading to the overall space complexity of O ( 2 n ) .
Importantly, to the best of our knowledge, this algorithm is the first in the literature to construct non-quadratic balanced Boolean functions with the additional constraint that no linear structure exists at which the derivative is equal to one. While its growth in complexity is exponential, this is expected due to the underlying combinatorial hardness of the imposed constraint. Nevertheless, the algorithm remains practically valuable for moderate values of n and provides a foundational step toward the structured generation of cryptographically relevant Boolean functions.
To evaluate its practical viability, the algorithm was implemented in SageMath and tested on functions of varying dimensions. The results, shown in Table 2, include both runtime measurements and sample elements of the generated subset B . Since the algorithm uses randomized pair selection, the reported times reflect average-case behavior. Experiments were conducted on a general-purpose computing platform with the given hardware configuration to ensure reproducibility and context for the measured performance.

6. Conclusions

In this paper, we have discussed results regarding the algebraic degrees of Boolean functions and proposed an algorithm to directly compute the algebraic degree from the truth table without requiring its algebraic normal form. Furthermore, we have studied a number of important properties concerning the support of balanced Boolean functions and offered new tools for the analysis of balancedness in the absence of certain linear structures. Additionally, the class of affine equivalent Boolean functions has been revisited through a novel, non-exhaustive approach, offering simplified proofs for several classical results. Moreover, we propose an algorithm to construct non-quadratic balanced Boolean functions (NQBBFs) that do not admit any unit linear structure at which the derivative equals 1. To the best of our knowledge, this is the first known algorithm in the literature that guarantees such a construction. We also implemented the algorithm in SageMath and provide empirical results to demonstrate its practical effectiveness for moderate values of n. Although the proposed algorithm for constructing NQBBFs achieves the desired combinatorial properties, its current time complexity remains exponential in n. As a direction for future research, it would be valuable to investigate whether such Boolean functions can be constructed through a more efficient, possibly polynomial-time method. Developing a theoretical framework or heuristic to reduce the computational burden while preserving the intersection property would constitute a significant contribution to the field.

Author Contributions

Conceptualization, S.K.; methodology, S.K.; formal analysis, D.C.; investigation, D.C.; resources, S.A.L.; writing—original draft preparation, S.K. and S.A.L.; writing—review and editing, S.A.L. and C.-C.L. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Data Availability Statement

No data were used or generated during the course of this study.

Acknowledgments

The authors would like to express their gratitude to all individuals who contributed to this research. Special thanks are extended to those who provided valuable feedback and support throughout the process.

Conflicts of Interest

The authors declare no conflicts of interest.

References

  1. Carlet, C. A simple description of Kerdock codes. In International Colloquium on Coding Theory and Applications; Springer: Berlin/Heidelberg, Germany, 1988; pp. 202–208. [Google Scholar]
  2. Logachev, A.; Salnikov, A.; Yashchenko, V. Boolean Functions in Coding Theory and Cryptography; American Mathematical Society: Providence, RI, USA, 2012; Volume 241. [Google Scholar]
  3. Muller, D.E. Application of Boolean algebra to switching circuit design and to error detection. In Transactions of the I.R.E. Professional Group on Electronic Computers; IEEE: New York, NY, USA, 1954; Volume 3, pp. 6–12. [Google Scholar]
  4. Gao, J.; Kan, H.; Li, Y.; Xu, J.; Wang, Q. Monomial Boolean functions with large high-order nonlinearities. Inf. Comput. 2024, 297, 105152. [Google Scholar] [CrossRef]
  5. Bakoev, V. Combinatorial and algorithmic properties of one matrix structure at monotone Boolean functions. arXiv 2019, arXiv:1902.06110. [Google Scholar] [CrossRef]
  6. Golomb, S. Shift Register Sequences; World Scientific: Singapore, 2017. [Google Scholar] [CrossRef]
  7. Wu, C.-K.; Feng, D. Boolean function representation of s-boxes and Boolean permutations. In Advances in Computer Science and Technology; Springer: Berlin/Heidelberg, Germany, 2016; pp. 217–241. [Google Scholar]
  8. Canteaut, A. Lecture Notes on Cryptographic Boolean Functions. 2016. Available online: www.rocq.inria.fr/secret/Anne.Canteaut/poly.pdf (accessed on 5 August 2025).
  9. Carlet, C. Boolean Functions for Cryptography and Coding Theory; Cambridge University Press: Cambridge, UK, 2021. [Google Scholar]
  10. Millan, W.; Clark, A.; Dawson, E. Heuristic design of cryptographically strong balanced Boolean functions. In Advances in Cryptology—EUROCRYPT’98; Nyberg, K., Ed.; LNCS; Springer: Berlin/Heidelberg, Germany, 1998; Volume 1403, pp. 489–499. [Google Scholar]
  11. Stinson, D. Cryptography: Theory and Practice; Chapman and Hall/CRC: Boca Raton, FL, USA, 2005. [Google Scholar]
  12. Carlet, C.; Guillot, P. A new representation of boolean functions. In International Symposium on Applied Algebra, Algebraic Algorithms, and Error-Correcting Codes; Springer: Berlin/Heidelberg, Germany, 1999; pp. 94–103. [Google Scholar]
  13. Behera, P.K.; Gangopadhyay, S. An improved hybrid genetic algorithm to construct balanced Boolean function with optimal cryptographic properties. Evol. Intell. 2022, 15, 639–653. [Google Scholar] [CrossRef]
  14. Carlet, C.; Jakobovic, D.; Picek, S. Evolutionary algorithms-assisted construction of cryptographic Boolean functions. In Proceedings of the GECCO’21: Proceedings of the Genetic and Evolutionary Computation Conference, New York, NY, USA, 10–14 June 2021; pp. 565–573. [Google Scholar]
  15. Arshad, S.; Khan, M. Construction of nonlinear component based on bent Boolean functions. Comput. Appl. Math. 2024, 43, 46. [Google Scholar] [CrossRef]
  16. Abughazalah, N.; Khan, M.; Iqbal, M. Hybrid multi-criteria decision-making technique for the selection of best cryptographic multivalued Boolean function. Complex Intell. Syst. 2024, 10, 455–468. [Google Scholar] [CrossRef]
  17. Çeşmelioğlu, A.; Meidl, W. Construction and equivalence for generalized Boolean functions. Cryptogr. Commun. 2025, 1–24. [Google Scholar] [CrossRef]
  18. Cusick, T.W.; Cheon, Y. Extended quadratic truncated rotation symmetric Boolean functions. Appl. Math. Comput. 2025, 507, 129601. [Google Scholar] [CrossRef]
  19. Sun, L.; Shi, Z.; Liu, J.; Fu, F.W. Constructions of rotation symmetric Boolean functions satisfying almost all cryptographic criteria. Theor. Comput. Sci. 2024, 1020, 114869. [Google Scholar] [CrossRef]
  20. Özçekixcx, E.; Kavut, S.; Kutucu, H. Genetic approach to improve cryptographic properties of balanced Boolean functions using bent functions. Computers 2023, 12, 159. [Google Scholar] [CrossRef]
  21. Liu, Q. The lower bounds on the second-order nonlinearity of three classes of Boolean functions. Adv. Math. Commun. 2023, 17, 418–430. [Google Scholar] [CrossRef]
  22. Carlet, C. Boolean functions for cryptography and error-correcting codes. In Boolean Methods and Models; Crama, Y., Hammer, P.L., Eds.; Cambridge University Press: Cambridge, UK, 2007. [Google Scholar]
  23. Méaux, P.; Journault, A.; Standaert, F.-X.; Carlet, C. Towards stream ciphers for efficient FHE with low-noise ciphertexts. Eurocrypt 2016, 9665, 311–343. [Google Scholar]
  24. Kumar, S.; Singh, H.; Mittal, G. A novel approach towards degree and Walsh-transform of Boolean functions. Int. J. Found. Comput. Sci. 2022, 33, 453–479. [Google Scholar] [CrossRef]
  25. Fuller, J.E. Analysis of Affine Equivalent Boolean Functions for Cryptography. Ph.D. Thesis, Queensland University of Technology, Brisbane, Australia, 2003. [Google Scholar]
  26. Ho, C.J. Affine Equivalence and Constructions of Cryptographically Strong Boolean Functions. Ph.D. Thesis, Naval Postgraduate School Monterey Ca, Monterey, CA, USA, 2013. [Google Scholar]
  27. Wang, Z.; Zeng, X.; Wu, J.; Yang, G. A method for determining the affine equivalence of Boolean functions. IEEE Access 2019, 7, 156326–156337. [Google Scholar] [CrossRef]
Table 1. Truth tables of BFs f , g and h.
Table 1. Truth tables of BFs f , g and h.
x 1 x 2 x 3 x 4 fgh
0000000
1000111
0100001
1100010
0010111
1010000
0110010
1110101
0001001
1001010
0101010
1101101
0011010
1011001
0111101
1111110
Table 2. Execution time and space usage for construction of non-quadratic balanced Boolean functions (NQBBFs) without linear structure at which derivative equals one.
Table 2. Execution time and space usage for construction of non-quadratic balanced Boolean functions (NQBBFs) without linear structure at which derivative equals one.
Variables (n)Size of B Time (s)Space Usage (Approx.)Sample Elements from B
480.003∼20 entries{(0,1,1,1), (1,0,0,0), (0,0,0,1), …}
5160.008∼40 entries{(1,1,0,0,1), (0,1,1,1,0), (0,0,0,0,1), …}
6320.15∼100 entries{(1,0,1,1,0,0), (0,1,0,1,1,1), (1,1,0,0,0,1), …}
7640.90∼200 entries{(1,1,1,0,1,0,1), (0,0,1,1,1,1,0), (1,0,0,0,0,1,1), …}
81285.40∼400 entries{(0,1,1,1,0,0,1,0), (1,1,0,1,1,1,1,1), (0,0,0,0,1,0,1,1), …}
System Specifications: (1) Processor: Intel(R) Core(TM) i5-8300H CPU @ 2.30 GHz, 4 Cores, 8 Logical Processors; (2) RAM: 8 GB; (3) System Type: x64-based PC; (4) System Model: Dell G3 3579.
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Kumar, S.; Chaudhary, D.; Lakshmanan, S.A.; Lee, C.-C. Novel Approach to Degree, Balancedness, and Affine Equivalence of Boolean Functions and Construction of a Special Class of Non-Quadratic Balanced Boolean Functions. Cryptography 2025, 9, 56. https://doi.org/10.3390/cryptography9030056

AMA Style

Kumar S, Chaudhary D, Lakshmanan SA, Lee C-C. Novel Approach to Degree, Balancedness, and Affine Equivalence of Boolean Functions and Construction of a Special Class of Non-Quadratic Balanced Boolean Functions. Cryptography. 2025; 9(3):56. https://doi.org/10.3390/cryptography9030056

Chicago/Turabian Style

Kumar, Sunil, Dharminder Chaudhary, S. A. Lakshmanan, and Cheng-Chi Lee. 2025. "Novel Approach to Degree, Balancedness, and Affine Equivalence of Boolean Functions and Construction of a Special Class of Non-Quadratic Balanced Boolean Functions" Cryptography 9, no. 3: 56. https://doi.org/10.3390/cryptography9030056

APA Style

Kumar, S., Chaudhary, D., Lakshmanan, S. A., & Lee, C.-C. (2025). Novel Approach to Degree, Balancedness, and Affine Equivalence of Boolean Functions and Construction of a Special Class of Non-Quadratic Balanced Boolean Functions. Cryptography, 9(3), 56. https://doi.org/10.3390/cryptography9030056

Article Metrics

Article metric data becomes available approximately 24 hours after publication online.
Back to TopTop