Next Article in Journal
Infinite Interval Problems for Fractional Evolution Equations
Next Article in Special Issue
Optimal Shadow Allocations of Secret Sharing Schemes Arisen from the Dynamic Coloring of Extended Neighborhood Coronas
Previous Article in Journal
A Novel Spatial–Temporal Radial Trefftz Collocation Method for 3D Transient Wave Propagation Analysis with Specified Sound Source Excitation
Previous Article in Special Issue
Low-Space Bit-Parallel Systolic Structure for AOP-Based Multiplier Suitable for Resource-Constrained IoT Edge Devices
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Construction of Boolean Functions from Hermitian Codes

by
Guillermo Sosa-Gómez
1,*,
Octavio Paez-Osuna
2,
Omar Rojas
1,3,
Pedro Luis del Ángel Rodríguez
4,
Herbert Kanarek
5 and
Evaristo José Madarro-Capó
6
1
Facultad de Ciencias Económicas y Empresariales, Universidad Panamericana, Álvaro del Portillo 49, Zapopan 45010, Mexico
2
Ronin Institute, Montclair, NJ 07043, USA
3
Faculty of Economics and Business, Universitas Airlangga, Surabaya 60286, Indonesia
4
Centro de Investigación en Matemáticas, Guanajuato 36023, Mexico
5
Departamento de Matemáticas, Universidad de Guanajuato, Guanajuato 36240, Mexico
6
Institute of Cryptography, University of Havana, Havana 10400, Cuba
*
Author to whom correspondence should be addressed.
Mathematics 2022, 10(6), 899; https://doi.org/10.3390/math10060899
Submission received: 24 January 2022 / Revised: 5 March 2022 / Accepted: 6 March 2022 / Published: 11 March 2022
(This article belongs to the Special Issue Codes, Designs, Cryptography and Optimization, 2nd Edition)

Abstract

:
In 2005, Guillot published a method for the construction of Boolean functions using linear codes through the Maiorana–McFarland construction of Boolean functions. In this work, we present a construction using Hermitian codes, starting from the classic Maiorana–McFarland construction. This new construction describes how the set of variables is divided into two complementary subspaces, one of these subspaces being a Hermitian Code. The ideal theoretical parameters of the Hermitian code are proposed to reach desirable values of the cryptographic properties of the constructed Boolean functions such as nonlinearity, resiliency order, and order of propagation. An extension of Guillot’s work is also made regarding parameters selection using algebraic geometric tools, including explicit examples.

1. Introduction

One of the major challenges and problems today is in confusion symmetric key algorithms, which depend heavily on good cryptographic properties of Boolean functions such as nonlinearity. For example, implementing a substitution box or S-box needs nonlinear Boolean functions to resist attacks such as linear and differential cryptanalysis. Searching for Boolean functions with desirable cryptographic properties has been difficult because the search space can be huge. There are different algorithms and algebraic and heuristic constructions that allow us to find this type of function; however, these techniques can be highly complex and difficult to implement, where the result does not produce a sufficient number of these types of functions.
In [1], the author presents a good relation between Boolean functions and codes. Furthermore, in [2], the construction of bijective S-boxes from quasi-cyclic codes was shown. In 2005, Guillot [3] presented an extension of the Maiorana–McFarland method for building Boolean functions with good cryptographic properties. The classical construction splits the set of variables into two separate subsets, with a decomposition of the complete working space into two complementary vector spaces being proposed. One of these spaces is considered as a linear code and its parameters assign cryptographic properties to the constructed Boolean function. The cryptographical properties we are interested in are nonlinearity, resiliency, and propagation. Building on such an idea, in [4], a methodology to construct Boolean functions from Guillot’s ideas was presented but, in this case, using Reed–Solomon codes. In this way, from the properties of the code, the cryptographic properties of the Boolean functions that will be generated with this methodology and the number of Boolean functions with similar properties can be obtained. In this work, we follow on the same ideas of [4], a new methodology is proposed for the construction of Boolean functions using Hermitian codes and thus extends the construction of π four to one giving the appropriate parameters for it. It theoretically bases the desirable values of the Hermitian code parameters to balance cryptographic properties such as nonlinearity, resiliency order, and propagation order.

2. Preliminaries

2.1. Boolean Function

The mathematical tool that we mainly use in this work is the Walsh–Hadamard transform. Let n Z , with n 2 , and F 2 n be the n-dimensional vector space over the finite field F 2 . Given vectors a, b F 2 n , we define the inner product a · b = ( a 1 b 1 a n b n ) , and the sum a b = ( a 1 b 1 , , a n b n ) , where inner product, ·, and addition, ⊕ (called XOR), are over F 2 . A Boolean function f in n variables is a map f : F 2 n F 2 .The algebra of all Boolean functions on F 2 n will be denoted by B n . The polar form f ^ : F 2 n { 1 , 1 } , or sign function, of a Boolean function f B n , is defined by f ^ ( x ) = 1 f ( x ) .

2.2. Basic Definitions

For f a Boolean function, we call the support of f, and write S u p ( f ) , the set of vectors of F 2 n whose image times f is 1, i.e., S u p ( f ) = { i F 2 n f ( i ) = 1 } . If f B n , we call the weight of f, and we write w ( f ) , to the number of 1s from its truth table; therefore w ( f ) = c a r d ( S u p ( f ) ) . We say that a function f B n is balanced if its truth table contains the same number of 0 as 1, i.e., if w ( f ) = 2 n 1 . We say that f B n is an affine function if we can write it as f ( x ) = a , x b for some a F 2 n and some b F 2 . If b = 0 , we say that f is a linear function. We denote the set of affine functions from F 2 n to F 2 by A n . Let f , g B n , we call the distance between f and g, and write d ( f , g ) , to the weight of the function f g , i.e., d ( f , g ) = w ( f g ) . We call nonlinearity of a function f B n , and write N f , to the minimum of the distances between f and any affine function, i.e., N f = m i n { d ( f , φ ) φ A n } .
Definition 1.
The Walsh–Hadamard transform of a function f in F 2 n is an application H ( f ) : F 2 n R , defined by
H ( f ) ( h ) = x F 2 n f ( x ) ( 1 ) h · x .
Theorem 1.
Let f : F 2 n F 2 and H ( f ) be the Walsh–Hadamard transform. Let S be an arbitrary subspace of F 2 n and let S be the dual (annihilator) of S, i.e., S = { x F 2 n : x · s = 0 , s S } . Then,
u S H ( f ) ( u ) = 2 d i m ( S ) u S f ( u ) .
Theorem 2.
The Nonlinearity of f is determined by the Walsh–Hadamard transform of f, i.e.,
N f = 2 n 1 1 2 max u F 2 n | H ( f ^ ) ( u ) | .

2.3. Cryptographic Properties of Boolean Functions

The following factors are important in the design of Boolean functions with good cryptographic properties [5,6,7]:
  • Balance: An n-variables Boolean function, f, is said to be balanced if w ( f ) = 2 n 1 . Cryptographic Boolean functions must be balanced, i.e., for a uniformly random input string of bits, the probability of getting a 1 is 1 / 2 .
  • Nonlinearity: This property reduces the effect of linear cryptanalysis attacks. As discussed before, the nonlinearity of a Boolean function can be calculated directly from the Walsh–Hadamard transform (see Theorem 2).
  • Algebraic Degree: A Boolean function f can be represented as a multivariable polynomial on F 2 . This polynomial is called the Algebraic Normal Form (ANF) of f.
  • Correlation Immunity: A Boolean function of n-variables is said to have Correlation Immunity of order l if and only if H ( f ^ ) ( u ) = 0 , with 1 w ( u ) l . A Boolean function with order of Correlation Immunity l and balanced is called l-resilient. There is a fundamental relationship between the number of variables n, the algebraic degree d, and the order of Correlation Immunity l of a function: l + d n .
In addition, there are some other important properties of Boolean functions that are used in S-boxes, such as the following two:
  • Propagation Criterion: A Boolean function has Propagation Criterion of order k, P C ( k ) , if f ( x ) f ( x u ) is balanced for all u with 1 w ( u ) k .
  • Avalanche Effect: It is related to autocorrelation and is defined with respect to a specific input bit such that complementing it results in a change in the output bit with a probability of 1 / 2 . The Strict Avalanche Criterion (SAC) requires the avalanche effects of all input bits. A Boolean function f is said to satisfy SAC if f ( x ) f ( x u ) is balanced for all u with w ( u ) = 1

2.4. Maiorana–McFarland Construction

A classic and well-known way of building Boolean functions is the Maiorana–McFarland (MM) class, which was created to obtain Bent functions. [8,9] and has also been extended to construct resistant functions [10,11]. For n 2 an integer, and F 2 n = E F , a decomposition into two complementary vector subspaces: E of dimension p and F of dimension q = n p . For any pair of maps π : E F 2 n and h : E F 2 the Maiorana–McFarland (MM) construction defines a Boolean function f as follows:
f : E F F 2 x + y π ( x ) · y + h ( x ) .
We note the following: the map π is defined on F 2 n , but since π ( x ) is wrapped by an inner product with an F element, the value of f is invariant when π ( x ) is translated by any vector of F . In this way, π can be defined over the space F 2 n / F , which is isomorphic to E . Thus, for any p   dimensional vector subspace E of F 2 n , the dual of E, denoted by E , is the ( n p )   dimensional vector space of vectors that perpendicular to E, i.e., E = { u F 2 n | x E , u · x = 0 } .

3. Concatenation

Let Q = q h , with q 2 , and h 1 . Consider two codes, which we call outer code and inner code. Let C be the outer code with parameters [ N , K , D ] Q , and let I be the inner code with parameters [ n , h , d ] q . The concatenation method [12,13] constructs a code F over F q out of a code over F Q . The first step is to fix any isomorphism φ : F Q I F q n . Then,
F : = { ( φ ( x 1 ) , , φ ( x N ) ) | ( x 1 , , x N ) C } .
The code F has parameters [ N · n , K · h , D · d ] q .

4. Goppa Codes

4.1. Basic Definitions

An algebraic function field F / K of one variable over K is an extension field F K such that F is a finite algebraic extension of K ( x ) for some element x F , which is transcendental over K [14]. A place P of the function field F / K is the maximal ideal of some valuation ring of F / K , P F : = { P | P i s a p l a c e o f F / K } . A discrete valuation of F / K is a function v : F Z { } . The divisor group D F of F / K is defined as the free abelian group generated by the places of F / K . For a divisor G D F we define the Riemann–Roch space associated to G by
L ( G ) : = { x F | v P ( x ) v P ( G ) , f o r a l l P P F } { 0 } .
It is well-known in the theory of error correcting codes that long block lengths, higher dimension, and a large minimum distance are necessary for the reliable transmission of information. Goppa codes provide a large family of codes with such properties. Let F / K be an algebraic function field of genus g. Let P 1 , , P n P F , n places of degree 1 of F. We define the divisor D : = P 1 + + P n D F , and let G D F be a divisor such that S u p ( G ) S u p ( D ) = . The Goppa code or algebraic code C L ( D , G ) associated with the divisors D and G is defined as:
C L ( D , G ) : = { ( f ( P 1 ) , , f ( P n ) ) | f L ( G ) } F q n .
Note that all f L ( G ) are defined in P i ( v P i ( f ) 0 ), for i = 1 , , n , so f ( P i ) F q . In this way, C L ( D , G ) is simply the image of the space L ( G ) under the linear mapping evaluation
e v D : L ( G ) F q n ,
given by e v D ( f ) : = ( f ( P 1 ) , , f ( P n ) ) . This definition is analogous to the Reed–Solomon codes [15]. In fact, in the case of the Reed–Solomon code R S ( k , q ) we have that F = K ( x ) ,
D = P 0 + P 1 + P α + + P α q 2
and
G = m · P ,
where m Z . It follows that K e r ( e v D ) = L ( G D ) so, using the Riemann–Roch theorem
d i m ( C L ( D , G ) ) = d i m ( G ) d i m ( G D ) .
Now, let f L ( G ) be such that d = w e i g h t ( e v D ( f ) ) . Then f has exactly n d zeros P i 1 , , P i n d S u p ( D ) . The latter tells us that
f L ( G ( P i 1 + + P i n d ) ) ,
where
0 d e g r e e ( G ( P i 1 + + P i n d ) ) = d e g r e e ( G ) ( n d ) .
So d n d e g r e e ( G ) . Then C L ( D , G ) is a code with parameters
[ n , d i m ( G ) d i m ( G D ) , n d e g r e e ( G ) ] q .

4.2. Goppa Codes Example

Consider the following example, let m = 3 and G = m · P , here d e g r e e ( G ) = 3 . We will use as our base field the finite field of order 4 F 4 = { 0 , 1 , α , α 2 } where α 2 + α + 1 = 0 . Consider the function field F : = F 4 ( x , y ) with y 2 + y = x 3 . The places of degree one in P F are: ( 0 , 0 ) , ( 0 , 1 ) , ( 1 , α ) , ( 1 , α 2 ) , ( α , α ) , ( α , α 2 ) , ( α 2 , α ) , ( α 2 , α 2 ) . We may build a Goppa code by defining the divisors D , G D F as
D : = ( 0 , 0 ) + ( 0 , 1 ) + ( 1 , α ) + ( 1 , α 2 ) + ( α , α ) + ( α , α 2 ) + ( α 2 , α ) + ( α 2 , α 2 ) ,
and
G : = 3 · P .
The functions 1 , x , y L ( G ) constitute a basis for L ( G ) . A generator matrix for the Goppa code associated with the divisors D and G is thus
( 1 1 1 1 1 1 1 1 0 0 1 1 α α α 2 α 2 0 1 α α 2 α α 2 α α 2 )
and the generated code has parameters [ 8 , 3 , 5 ] 4 .

4.3. Hermitian Codes

Throughout this section q will be a prime power, K denotes the finite field F q 2 and the function field F = K ( x , y ) with
y q + y = x q + 1 .
is called the Hermitian function field [16].
Lemma 1
(See [16]). The Hermitian function field F has the following properties:
(a) 
F has a genus g = q ( q 1 ) / 2 ,
(b) 
F has q 3 + 1 places of degree one over F q 2 .
Proof. 
We prove each of the properties of the Lemma as follows:
(a)
Because H is a nonsingular (see proof in [16]) plane curve of degree q + 1 , it follows, by the Riemann–Hurwitz theorem, that g = q ( q 1 ) / 2 .
(b)
Let P be the common pole of x and y. Furthermore, for every α F q 2 , there are q elements β F q 2 such that β q + β = α q + 1 , and with respect to all pairs α , β there is a single place P α , β P H of degree one with x ( P α , β ) = α and y ( P α , β ) = β . Thus, we have q 3 + 1 points on the Hermitian curve, denoted by P 1 , , P q 3 together with P .
For each m Z + , we define the m-th Hermitian code on F q 2 or AG code, C m : = C ( D ; m P ) whose parameters are [ n ; k m ; d m ] q 2 .
Proposition 1.
An F q 2 -base of L ( m P ) , m 0 , is given by
A ( m ) = { x i y j : i q + j ( q + 1 ) m ; i 0 ; 0 j q 1 } .
In particular, if we denote by v ( m ) the dimension of L ( m P ) , we have v ( m ) = # ( A ( m ) ) .
Proof. 
The elements 1 , y , , y q 1 form a basis for F / K ( x ) . In particular, for all places P P K ( x ) different from P , we have d ( P i P ) = v P i ( φ ( y ) ) , where φ ( T ) = T q + μ T + f ( x ) is the minimal polynomial of y over K ( x ) . Observe that φ ( T ) is in O P T for all places P P K ( x ) different from P , therefore for all Q P , we have that v Q ( φ ( y ) ) = v Q ( μ ) = 0 = d ( Q P ) . Let z L ( m Q ) . Because Q is the only pole of z, z is integral over O P for all P P K ( x ) , with P P , so z = j = 0 q 1 z j y j with z j K ( x ) and z j has no poles other than P . Therefore, z j is a polynomial in K x , i.e.,
z = j = 0 q 1 i 0 a i j x i y j ,
with a i j K . The elements x i y j , for 0 j q 1 , have pairs of different pole order because v Q ( x ) = q , v Q ( y ) = ( q + 1 ) , with q and q + 1 being relative primes; therefore, applying the strict triangle inequality, we have v Q ( z ) = m i n { i q ( q + 1 ) j a i j 0 } , therefore
d i m F q 2 ( L ( G ) ) = # { x i y j : i q + j ( q + 1 ) m ; i 0 ; 0 j q 1 } .
Theorem 3.
Suppose that 0 m < q 3 . Then
d i m C m = v ( m ) i f m q 2 q 2 , m + 1 ( q 2 q ) / 2 i f q 2 q 2 < m < q 3 .
Proof. 
See the proof in [16].  □
Observation: The Hermitian codes have as parameters q 3 , d i m C m , q 3 d i m C m q 2 .

4.4. Hermitian Code Example

Notice that the example in the previous section corresponds to an Hermitian function field. Here we present an example with m = 6 . As before we will use F 4 = { 0 , 1 , α , α 2 } as our base field, with α 2 + α + 1 = 0 . Again we consider the function field F : = F 4 ( x , y ) with y 2 + y = x 3 . Recall that the places of degree one in P F are ( 0 , 0 ) , ( 0 , 1 ) , ( 1 , α ) , ( 1 , α 2 ) , ( α , α ) , ( α , α 2 ) , ( α 2 , α ) , ( α 2 , α 2 ) . To construct the Hermitian code C 6 we define the divisors D , G D F as D : = ( 0 , 0 ) + ( 0 , 1 ) + ( 1 , α ) + ( 1 , α 2 ) + ( α , α ) + ( α , α 2 ) + ( α 2 , α ) + ( α 2 , α 2 ) and G : = 6 · P . The functions 1 , x , x 2 , x 3 , y , x y constitute a basis for L ( G ) , therefore, a generator matrix G for the Goppa code associated with the divisors D and G is given by
G = 1 1 1 1 1 1 1 1 0 0 1 1 α α α + 1 α + 1 0 0 1 1 α + 1 α + 1 α α 0 0 1 1 1 1 1 1 0 1 α α + 1 α α + 1 α α + 1 0 0 α α + 1 α + 1 1 1 α .
The obtained code has parameters [ 8 , 6 , 2 ] 4 .

5. Constructing x 0

Our proposal is determined by the order of resilience that we can and want to have in our Boolean function. As previously seen, the work fosters the basis of the Maiorana–McFarland construction. A complete description is made in [3,4].
Given a Hermitian code C with parameters q 3 , k m = d i m C m , q 3 k m q 2 , which for q = 2 k , its parameters can be written as 2 3 k , k m = d i m C m , 2 3 k k m 2 2 k . For the isomorphism we continue with what was formalized previously, taking I as the image set of ϕ : F 2 2 k F 2 2 k + 1 by using a binary inner code with parameters 2 k + 1 , 2 k , 2 2 . So the concatenated code F has parameters ( 2 k + 1 ) 2 3 k , 2 k m · k , 2 ( 2 3 k k m ) 2 . For convenience, let us denote the parameters of F by n , q , d F 2 . Without loss of generality, we assume our code F, which in turn will be our complementary subspace F, is systematic. The complementary subspace E will therefore have dimension p = n q and will be of the form E = { ( x 1 , x 2 , , x n ) F 2 n : x 1 = 0 , x 2 = 0 , , x q = 0 } .
One of the properties of Boolean functions that interests us is the Propagation Criterion; in his article, Guillot showed that a Boolean function has Propagation Criterion of order k if for the lateral class x 0 + F where x 0 E , it holds that w ( x 0 + F ) > > k . In principle, because we want to find a Boolean function with P C ( k 1 ) , we must select an appropriate x 0 . Let L be a function in an Hermitian function field, a an element of F q 2 . If v P ( L a ) > 0 it means that P is a zero of the function L a , and applying the natural map we have ( L a ) ( P ) = L ( P ) a ( P ) = L ( P ) a = 0 , or simply L ( P ) = a . So we are looking for a function L L ( t P ) , for some t Z such that L ( P 1 ) = L ( P 2 ) = = L ( P q ) = 0 , preferably that those are its only zeros. So, function L is a linear combination of the functions of a basis for L ( t P ) .

5.1. Construction of x 0

For the construction of the required function L we rely on the Strong Approximation theorem, employing an idea that Henning gave us, which is the following: Suppose we want our x 0 to have t zeros in the first coordinates, here t is the dimension of the subspace F, we distinguish the following three cases:
Case 1: If t = q 3 q 2 , we choose i = q 2 q different elements α 1 , , α i F q 2 . Then the function L may be written as
L = ν = 1 i ( x α ν ) ,
and P D = { ( α ν , δ ) P D , δ F q 2 , ν = 1 i } . We write D = ( D ) ( D D ) . In this case L will have exactly q i = t different zeros, P α , β of degree one, so e v D ( L ) is a vector of weight less than or equal to q 3 t .
Case 2: If t < q 3 q 2 , we write t = i q + j ( q + 1 ) , with i 0 and 0 j q 1 , such that i q 2 q 1 . We fix an element 0 γ F q and we consider the set A = { α F q 2 α q + 1 γ } . Then # A = q 2 ( q + 1 ) i , and we can select different elements α 1 , , α i A . We select a subset I A w i t h # I = i . So, the function
L 1 = ν I ( x α ν ) ,
has i q different zeros. As a next step, we choose j different elements β 1 , , β j F q 2 with β μ q + β μ = γ and we define now
L 2 = μ = 1 j ( y β μ ) ,
then L 2 has j ( q + 1 ) zeros, which are distinct from the zeros of L 1 because β μ q + β μ = γ α ν q + 1 for μ = 1 , , j y ν = 1 , , i . So, L = L 1 · L 2 . Furthermore, let us define the set P A = { ( α ν , δ ) P D , δ F q 2 , ν = 1 i } and P B = { ( γ , β μ ) P D , μ = 1 j } . We redefine D = { P A , P B , D ( P A P B ) } and we evaluate e v D ( L ) , which will give us a vector with q 3 t zeros in the first coordinates.
Case 3: If q 3 q 2 < t < q 3 , by assumption, s = q 3 t is of polar order and 0 < s < q 2 q 3 q 2 . Case 2 there is a function L H with main divisor ( L ) = D ^ s P where 0 D ^ D and g r a d ( D ^ ) = s . The function u = x q 2 x H has divisor ( u ) = D q 3 P , therefore, ( L 1 · u ) = ( D D ^ ) ( q 3 s ) P = ( D D ^ ) ( t ) P . So the function L = L 1 · u . As we have shown so far, we redefined D = D ^ ( D D ^ ) .

Example

Take the case of the Hermitian curve y 2 + y = x 3 over F 2 2 = F 4 , the base subfield is composed of F 2 = { 0 , 1 } and F 4 = { 0 , 1 , α , α 2 } where α 2 + α + 1 = 0 . The points on the curve are: ( 0 , 0 ) , ( 0 , 1 ) , ( 1 , α ) , ( 1 , α 2 ) , ( α , α ) , ( α , α 2 ) , ( α 2 , α ) , ( α 2 , α 2 ) .
Case 1: If t = 4 = 2 3 2 2 and q = 2 , then i = 2 . Just take the first two elements of F 4 to build L such that L ( x ) = x ( x 1 ) = x 2 + x . Then, e v a D ( L ( x ) ) = { 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 } .
Case 2: We take t = 3 = 0 · q + 1 · ( q + 1 ) < 2 3 2 2 , such that i = 0 , j = 1 . So, let us define the set B for γ = 1 (it is important to clarify that A is not defined because i = 0 ). B = α , and P B = { ( 1 , α ) , ( α , α ) , ( α 2 , α ) } . Now, from B the first to form our function L, L ( x , y ) = ( y α ) = y + α . We redefine D = { P B , D P B } such that D = { ( 1 , α ) , ( α , α ) , ( α 2 , α ) , ( 0 , 0 ) , ( 0 , 1 ) , ( 1 , α 2 ) , ( α , α 2 ) , ( α 2 , α 2 ) } and e v D ( L ( x , y ) ) = { 0 , 0 , 0 , α , α 2 , 1 , 1 , 1 } .
Case 3: Let us assume t = 5 > 2 3 2 2 , so s = 8 5 = 3 and Case 2 applies but with s = 3 , which we already have built from the previous example. Then, L ( y ) = ( y + α ) . Now D = P B = { ( 1 , α ) , ( α , α ) , ( α 2 , α ) } . We redefine D = { P B , D P B } and thus e v D ( L ( y ) ) = { 0 , 0 , 0 , α , α 2 , 1 , 1 , 1 } . We define L ( x , y ) = x 4 + x L ( y ) = x 4 + x ( y α ) and redefine D = { D D , D } = { ( 0 , 0 ) , ( 0 , 1 ) , ( 1 , α 2 ) , ( α , α 2 ) , ( α 2 , α 2 ) , ( 1 , α ) , ( α , α ) , ( α 2 , α ) } and therefore e v D ( L ( x , y ) ) = { 0 , 0 , 0 , 0 , 0 , 1 , 1 , 1 } .

6. Construction of π and h

Lemma 2.
If w F 2 n , we have that
w F 2 n ( 1 ) u · w = 2 n , i f w = 0 0 , i n o t h e r c a s e
Proof. 
First, if w = 0 , then all the addends are 1. Now, let us assume that w 0 , and consider the hyperplanes H = { u F 2 n : u · w = 0 } , H ¯ = { u F 2 n : u · w = 1 } . These hyperplanes generate a partition of F 2 n . On the other hand, for any u H , the sum is 1, and for any u H ¯ , the sum is 1 . Since the cardinalities of H and H ¯ are the same, that is, 2 n 1 , we have proven the Lemma. □
Theorem 4.
Given p and q with p + q = n and 1 p < n , we define z = ( z 1 , , z n ) F 2 n , x E and y F such that F 2 n = E F with d i m ( E ) = p and d i m ( F ) = q . In addition, we have the construction of MM, we define the Boolean function f ( z ) by f ( z ) = f ( x , y ) = π ( x ) · y + h ( x ) , with π : E E . Let
λ = m i n { w ( π ( x ) ) : x E } 1 .
Then f ( x ) has a resilience of order l with l λ 1 .
Proof. 
Recall that a Boolean function has resilience of order l if H ( f ^ ) ( u ) = 0 , with 0 w ( u ) l . We have
z F 2 n ( 1 ) f ( z ) = x E ( 1 ) h ( x ) y F ( 1 ) π ( x ) · y = 0 ,
since adding over y is always zero because π ( x ) 0 by Definition 1 and using Lemma 2. So, f ( z ) is balanced. For any l λ 1 and any choice u with 1 w ( u ) l , we have
H ( f ^ ) ( u ) = x , y E × F 1 π ( x ) · y + h ( x ) + u · ( x + y ) , = x E 1 h ( x ) + u · x y F 1 ( π ( x ) + u ) · y .
Since w ( u ) l and w ( π ( x ) ) λ l + 1 , we obtain π ( x ) u 0 , so you add them over y are zero. So H ( f ^ ) ( u ) = 0 for all u with 0 w ( u ) l , therefore, f has resilience of order l. □
Theorem 5.
Let n , p , q Z + . Consider t u = # { x E π ( x ) = u } and t = max u t u . Then
N f = 2 n 1 t 2 q 1 ,
where f has an MM construction.
Proof. 
How f ( x , y ) = π ( x ) · y + h ( x ) have MM construction. We have the mappings: π : E E , with h : E F 2 , and d i m ( E ) = d i m ( F ) = p , d i m ( F ) = d i m ( E ) = q and n = p + q . By definition of Walsh–Hadamard transform, for any w F 2 n , w = u + v , where u E , v F , and expression (8). Now, if π ( x ) = u , the sum on the right is 2 q and and it will be zero otherwise. So that,
H ( f ^ ) ( u ) = 2 q { x E π ( x ) = u } 1 h ( x ) + v · x .
In this way, max w | H ( f ^ ) ( w ) | = max u , v | H ( f ^ ) ( u , v ) | = 2 q m a x u t u = t 2 q . By the Theorem 2, we substitute
N f = 2 n 1 1 2 max w F 2 n | H ( f ^ ) ( w ) | = 2 n 1 1 2 t 2 q = 2 n 1 t 2 q 1 .
Theorem 6
([17]). Given n , k Z + such that n 4 , 1 k n 3 , and any t Z + , let q t be the smallest q such that
t q l + 1 + q l + 2 + + q q 2 n q ,
then 2 q 1 t 2 q t , i.e., m i n { t 2 q t t = 1 , 2 , } = 2 q 1 .
To prove the above theorem, we need some lemmas. The following motto is well-known and we will omit its demonstration.
Lemma 3.
For n , k Z + , we have the following equality
n k = n 1 k + n 1 k 1 .
Lemma 4.
For n , k Z + , we have the following inequality
2 n k + 1 + n k + 2 + + n n n + 1 k + 1 + n + 1 k + 2 + + n + 1 n + 1 .
Proof. 
By Lemma 3, we have
n + 1 k + 1 + n + 1 k + 2 + + n + 1 n + n + 1 n + 1 = n k + 1 + n k + n k + 2 + n k + 1 + + n n + n n 1 + n + 1 n + 1 .
Regrouping we have
n k + 1 + n k + 2 + + n n + n k + 1 + + n n 1 + n n + n k = 2 n k + 1 + n k + 2 + + n n + n k .
Lemma 5.
If q q t , then
t q l + 1 + q l + 2 + + q q 2 n q .
Proof. 
By the definition of q t ,
t q t l + 1 + q t l + 2 + + q t q t 2 n q t .
Then, for q q t ,
t q l + 1 + q l + 2 + + q q t + + q q t q t l + 1 + q t l + 2 + + q t q t 2 n q t 2 n q .
Now, let us prove Theorem 6.
Proof. 
If t = 1 , then t 2 q t = 2 q 1 . So let us show that t 2 q t 2 q 1 when t 2 . If t 2 , then there exists an r 1 such that 2 r t < 2 r + 1 . If q 1 r q t , then t 2 q t t 2 q 1 r 2 r 2 q 1 r = 2 q 1 , the proof is completed if q 1 r q t .

6.1. π One-to-One

Following the ideas presented in [4], we observe that we need to have all the values of π ( E ) available. For u E , we will construct the lateral class u + F and compute the minimum weight of this class for each u. Let us store these weights in the set U ( l ) = { u E : w ( u + F ) l } . In order to build π one by one, we should have that q > p , since we want our Boolean function to be balanced. To construct a Boolean function with a high resilience of ( l 1 ) -order, we must take care of the cardinality of U ( l ) 2 p . We then construct the image of π ( E ) , 2 p nonzero elements of U ( l ) , and we assign it randomly. Likewise, for h ( E ) , we randomly generate its values using any pseudo-random number generator.
Theorem 7.
For f B n , the maximum nonlinearity of f is N f = 2 n 1 2 q 1 1 , and it can obtained if t = 1 .
Proof. 
By the definition of π , t and q satisfy the following inequality:
t n q l + 1 + n q l + 2 + + n q n q 2 q ,
or
t q l + 1 + q l + 2 + + q q 2 n q .
The maximum of nonlinearity is obtained if q is the smallest value satisfying the previous equation. That is to say, m a x t N f = m a x t N f = 2 n 1 t 2 q t 1 = 2 n 1 m i n t t 2 q t 1 = 2 n 1 2 q 1 1 .
Lemma 6.
Let n , l , q 1 be given as in Theorem 7. Then q 1 n 2 + 1 .
Proof. 
By the definition of q 1 ,
q 1 l + 1 + q 1 l + 2 + + q 1 q 1 2 n q 1 .
In this way
q 1 0 + q 1 1 + + q 1 l + q 1 l + 1 + q 1 l + 2 + + q 1 q 1 q 1 0 + q 1 1 + + q 1 l + 2 n q 1 ,
and
2 q 1 q 1 0 + q 1 1 + + q 1 l + 2 n q 1 ,
leading to
2 q 1 2 n q 1 q 1 0 + q 1 1 + + q 1 l .
Since the right hand side of the above inequality is positive, q 1 > n q 1 2 q 1 > n q 1 n 2 + 1 .
Theorem 8.
Let n 2 Z , with n 4 , and let q 1 = n 2 + 1 . Then the nonlinearity of f is N f = 2 n 1 2 n 2 .
Proof. 
The proof is simple, just substitute the value of q 1 = n 2 + 1 in Theorem 7. □
Corollary 1.
If n 2 Z , and N f = 2 n 1 2 n 2 , then the upper bound of the correlation immunity order is
l n 4 + 0.238468 n + 2 .
Proof. 
Let us start with the fact that the Theorem 7 we had obtained that,
q 1 l + 1 + q 1 l + 2 + + q 1 q 1 2 n q 1 .
We substitute q 1 = n 2 + 1 and we have
n 2 + 1 l + 1 + n 2 + 1 l + 2 + + n 2 + 1 n 2 + 1 2 n 2 1 .
Recall a classic fact from statistics: If X is a random variable and has a binomial distribution, i.e., X B n , 1 2 where n is the number of Bernoulli trials then,
P ( X l ) = k = l n n k 1 2 n .
If we have that X B n 2 + 1 , 1 2 , then
P ( X l + 1 ) = k = l + 1 n 2 + 1 n 2 + 1 k 1 2 n 2 + 1 = 1 2 n 2 + 1 k = l + 1 n 2 + 1 n 2 + 1 k .
Thus we have that
2 n 2 + 1 P ( X l + 1 ) = k = l + 1 n 2 + 1 n 2 + 1 k .
If we assume the fact that P ( X l + 1 ) 1 4 we have that
k = l + 1 n 2 + 1 n 2 + 1 k 2 n 2 1 .
That is, when P ( X l + 1 ) 1 4 , we have the desired inequality.
As P ( X l + 1 ) = 1 P ( X < l + 1 ) = 1 P ( X l ) 1 4 P ( X l ) 3 4 . Recall that de Moivre showed that when certain conditions are met, a binomial distribution can be approximated to a normal distribution of mean μ = n · a and standard deviation σ = n · a · b , i.e., X B ( n , a ) N ( n · a , n · a · b ) , where n is the sample size and a = 1 b . The goodness of the approximation is the better the larger n 10 and the closer is to of 0.5 with a correction of 1 2 because it is fitting a discrete distribution to a continuous one. We decided to give an approximation with the normal distribution B n 2 + 1 , 1 2 N n 4 + 1 2 , n 8 + 1 4 , i.e., X N n 4 + 1 2 , n 8 + 1 4 , and we want to see which quartile satisfies that P ( X l ) 3 4 , and gives that l n 4 + 0.238468 n + 2 . □

6.2. π Two-to-One

In this case the methodology is different. We observe that we need to have all the values of π ( E ) for u E . We will build the lateral class u + F , where the same lateral class is divided into two parts according to the linear function
v v · x 0 .
We define E 0 = { v u + F v · x 0 = 0 } and E 1 = { v u + F v · x 0 = 1 } . We calculate the minimum weight of E 0 and E 1 , and denote them w ( E 0 ) and w ( E 1 ) , respectively. For each u E we determine w ( E 0 ) and w ( E 1 ) . If we want to construct a Boolean function ( l 1 ) -resilient, we need max { w ( E 0 ) , w ( E 1 ) } l . Then we save u with this property, i.e., we save the pair ( u , 0 / 1 ) , where 0 / 1 corresponds to the fact where the maximum is reached in E 0 or E 1 . After that, we define the h function and call this set U l . It is clear that U l E . With these elements of U l we will build the image of π ( E ) and the image of h ( E ) . As in the previous section, we must take care that the cardinality of 2 p U l 2 p 1 .
Proposition 2.
The optimal value of l, when 2 p U l 2 p 1 , is given by
i = 1 q 2 q 2 l + i 2 n q 2 1 .
Proof. 
This happens due to the fact of the Theorem 5, since π is two to one, t = 2 . If we substitute this value in the results of Theorem 5 and in Lemma 5, we have that N f = 2 n 1 2 q 2 and i = 1 q 2 q 2 l + i 2 n q 2 1 .
Using part of the proof of Lemma 5, to estimate q 2 , as t = 2 and r = 1 , then q 1 1 < q 2 , we had previously calculated q 1 n 2 + 1 , this implies that q 2 n 2 . If we take q 2 = n 2 ,
n 2 l + 1 + n 2 l + 2 + + n 2 n 2 2 n 2 1 .
Corollary 2.
If n 2 Z and N f = 2 n 1 2 n 2 , then the upper bound of the correlation immunity order is
l n 4 1 2 .
Proof. 
Following the procedure from the previous section to find a bound for the value of resilience using statistics and find the uneven from the binomial distribution. If X is a random variable and has a binomial distribution, i.e., X B n 2 , 1 2 where n 2 is the number of Bernoulli trials then,
P ( X l + 1 ) = k = l + 1 n 2 n 2 k 1 2 n 2 .
We have
2 n 2 P ( X l + 1 ) = k = l + 1 n 2 n 2 k .
If we assume the fact that P ( X l + 1 ) 1 2 , we have that
k = l + 1 n 2 n 2 k 2 n 2 1 ,
i.e., when P ( X l + 1 ) 1 2 , we have the desired inequality, as P ( X l + 1 ) = 1 P ( X < l + 1 ) = 1 P ( X l ) 1 2 P ( X l ) 1 2 .
We decided to give an approximation with the normal distribution B n 2 , 1 2 N n 4 , n 8 , i.e., X N n 4 , n 8 and we want to see which quartile satisfies that P ( X l ) 1 2 , and gives that l n 4 1 2 . □
From the set U l , let us take exactly 2 p 1 , and let none of them be the zero element to ensure the balance. We construct the image of π in such a way that π ( x ) = π ( x + x 0 ) . The construction of h is carried out in such a way that the value of h ( x ) is random and the value of h ( x + x 0 ) = h ( x ) + h u , the value h u is associated to the image value of π ( x ) = u . On the other hand, if the vector space F and the lateral class x 0 + F have minimum weight k, then f satisfies P C ( k 1 ) .

6.3. π Four-to-One

We assume that π is a four-to-one mapping, i.e., for any u π ( E ) , the preimage π 1 ( u ) contains exactly four elements. This implies that p + 3 q . We will first examine the Walsh–Hadamard Transform of f in such a case. Since any quartet { t , x 0 + t , y 0 + t , x 0 + y 0 + t } is a two-dimensional affine subspace, the proposition is applicable. With the notation of the statement, V u is the vector space { 0 , t } and for any v F ,
H ( h u ^ ) ( v ) = ( 1 ) h ( t ) + v · t + ( 1 ) h ( x 0 + t ) + v · ( x 0 + t ) + ( 1 ) h ( y 0 + t ) + v · ( y 0 + t ) + ( 1 ) h ( x 0 + y 0 + t ) + v · ( x 0 + y 0 + t ) = 0 ± 2 ± 4
For convenience, we want to build a Boolean function as optimal as possible, so we will take the values in our opinion the most favorable and without losing generality, we have that the Walsh–Hadamard transform of f is expressed, for any u E and any v F , in the following way
H ( f ^ ) ( u + v ) = 0 , i f π 1 = o r i n a n o t h e r c a s e ± 2 q + 1 , i f ( h ( t ) + h ( x 0 + t ) = v · x 0 ) ( h ( x 0 + t ) + h ( x 0 + y 0 + t ) v · x 0 )
We assume that our affine subspace is { t , x 0 + t , y 0 + t , x 0 + y 0 + t } , where t V is of dimension two, for the construction of π and h.
For u E , we construct the lateral class u + F , the same lateral class is divided into two parts according to the linear functional
v v · x 0 .
We define E 0 = { v u + F v · x 0 = 0 } and E 1 = { v u + F v · x 0 = 1 } . We calculate the minimum weight of E 0 and E 1 , we will denote it by w ( E 0 ) and w ( E 1 ) For each u E we determine w ( E 0 ) and w ( E 1 ) , if we want to construct a Boolean function ( l 1 ) -resilient, we need max { w ( E 0 ) , w ( E 1 ) } l and also w ( E 0 ) l and w ( E 1 ) l . Then we save u with this property, i.e., we save the pair ( u , 0 / 1 ) to define the function h later, we will call this set U l , it is clear that U l E . With these elements of U l we will build the image of π ( E ) and the image of h ( E ) . As in the previous section, we must take care that the cardinality of 2 p > U l 2 p 2 .
Proposition 3.
The optimal value of l, when 2 p > U l 2 p 2 , is given by
i = 1 q q l + i 2 n q 2 .
Proof. 
This happens due to the fact derived from Theorem 5, since π is four-to-one, t = 4 . If we substitute this value in the results of Theorem 5 and in Lemma 5, we have N f = 2 n 1 2 q 4 + 1 and
i = 1 q 4 q 4 l + i 2 n q 4 2 .
Using part of the proof from Lemma 5, to estimate q 4 , as t = 4 and r = 2 , then q 1 2 < q 4 , we had previously calculated q 1 n 2 + 1 . This implies that q 4 n 2 1 , but we want p q , so for the inequality of Lemma 5, we will use q 4 = n 2 . If we take q 4 = n 2 and substitute, then we have
n 2 l + 1 + n 2 l + 2 + + n 2 n 2 2 n 2 2 .
Corollary 3.
If n 2 Z and N f = 2 n 1 2 n 2 , then the upper bound of the correlation immunity order is given by
l n 4 + 0.238468 n 1 2 .
Proof. 
Following the procedure from the previous construction to find a bound for the resilience value using statistics and find the uneven from the binomial distribution. If X is a random variable and has a binomial distribution, i.e., X B ( n 2 , 1 2 ) where n 2 is the number of Bernoulli trials then,
P ( X l + 1 ) = k = l + 1 n 2 n 2 k 1 2 n 2 .
It remains that
2 n 2 P ( X l + 1 ) = k = l + 1 n 2 n 2 k .
If we assume the fact that P ( X l + 1 ) 1 4 we have that
k = l + 1 n 2 n 2 k 2 n 2 2 ,
i.e., when P ( X l + 1 ) 1 4 we have the desired inequality. Since P ( X l + 1 ) = 1 P ( X < l + 1 ) = 1 P ( X l ) 1 4 P ( X l ) 3 4 .
We decided to give an approximation with the normal distribution B n 2 , 1 2 N n 4 , n 8 , i.e., X N n 4 , n 8 , and we want to see which curtail satisfies that P ( X l ) 3 4 , and gives us that l n 4 + 0.238468 n 1 2 . □
From the set U l , let us take exactly 2 p 2 , and let none of them be the zero element to ensure the balance. We construct the image of π in such a way that π ( t ) = π ( t + x 0 ) = π ( t + y 0 ) = π ( t + x 0 + y 0 ) . The construction of h is carried out in such a way that the values of h ( t ) and h ( t + y 0 ) are random. The values of h ( t + x 0 ) = h ( t ) + h u and h ( t + x 0 + y 0 ) = h ( t + y 0 ) + h u + 1 , the value h u is associated with the value from the image of π ( t ) = u . As previously, if the vector space F and the lateral class x 0 + F have minimum weight k, then f satisfies P C ( k 1 ) .

6.4. Boolean Functions from C L ( D , G )

Let C L ( D , G ) be a code with parameters
[ n , d i m ( G ) d i m ( G D ) , n d e g r e e ( G ) ] q .
For our construction of Boolean functions, we will use a concatenated Hermitian code. Let C L ( D , G ) , which is our outer code. Let I be the all even-weight codewords, then with parameters k + 1 , k , 2 2 . After concatenation, we obtain a code F with parameters
n ( k + 1 ) , k · ( d i m ( G ) d i m ( G D ) ) , 2 ( n d e g r e e ( G ) ) 2 .
We will use our code F as the main ingredient to the MM construction, obtaining a new family of Boolean functions, in n ( k + 1 ) variables.

7. Conclusions

In this work, the methodology for constructing Boolean functions from Hermitian codes using the MM construction has first been presented. Further, the way to build x 0 has been given from the Strong Approximation Theorem on a Hermitian field. Moreover, we have established the optimal parameters based on the dimension of the Hermitian code and, on this, adjust the value of resilience to build cryptographically strong Boolean functions. Furthermore, a complete description is made of what the parameters of the Hermitian code should be, in order to select the appropriate π , and thus the much-desired Boolean functions. Desirable cryptographic properties given the chosen construct were carefully reviewed. We established what the optimal parameters are in order to find the Boolean functions according to the Hermitian code. Thus, it will be possible to know when the functions will be balanced and what propagation order criteria they will have; thus, it will be possible to know the order of nonlinearity and resilience.

Author Contributions

The author G.S.-G. worked on conceptualization, methodology, writing—original draft preparation, research, and formal analysis of the work. The author P.L.d.Á.R. did the formal analysis, writing—original draft preparation and supervision. The author O.P.-O. was dedicated to the part of visualization, software, validation, and writing—review and editing. The author H.K. worked on the methodology, writing—original draft preparation, research, and validation. The author E.J.M.-C. was dedicated to visualization, validation, and software. The author O.R. dedicated himself to the part of project administration, writing—review and editing, and supervision. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Carlet, C. Boolean Functions for Cryptography and Error-Correcting Codes. Boolean Model. Methods Math. Comput. Sci. Eng. 2013, 2, 257–397. [Google Scholar] [CrossRef]
  2. Bikov, D.; Bouyukliev, I.; Bouyuklieva, S. Bijective S-boxes of different sizes obtained from quasi-cyclic codes. J. Algebra Comb. Discret. Struct. Appl. 2019, 6, 123–134. [Google Scholar] [CrossRef]
  3. Guillot, P. Cryptographical Boolean Functions Construction From Linear Codes. In Proceedings of the BFCA’05 Conference, Rouen, France, 8–9 March 2005; pp. 1–14. [Google Scholar]
  4. Sosa-Gómez, G.; Paez-Osuna, O.; Rojas, O.; Madarro-Capó, E.J. A new family of boolean functions with good cryptographic properties. Axioms 2021, 10, 42. [Google Scholar] [CrossRef]
  5. Rodríguez, F. De la Búsqueda de Funciones Booleanas con Buenas Propiedades Criptográficas. México. 2007. Available online: Http://delta.cs.cinvestav.mx/~francisco/cajass.pdf (accessed on 28 May 2010).
  6. Behera, P.K.; Gangopadhyay, S. An improved hybrid genetic algorithm to construct balanced Boolean function with optimal cryptographic properties. Evol. Intell. 2021, 15, 1–15. [Google Scholar] [CrossRef]
  7. Wang, B.; Su, S. A New Construction of odd-variable Rotation symmetric Boolean functions with good cryptographic properties. Adv. Math. Commun. 2020, 16, 365–382. [Google Scholar] [CrossRef]
  8. Camion, P.; Carlet, C.; Charpin, P.; Sendrier, N. On Correlation-Immune Functions; Springer: Berlin/Heidelberg, Germany, 1991; Volume 91, pp. 86–100. [Google Scholar]
  9. Polujan, A.A.; Pott, A. Cubic bent functions outside the completed Maiorana-McFarland class. Des. Codes Cryptogr. 2020, 88, 1701–1722. [Google Scholar] [CrossRef] [Green Version]
  10. Dillon, J.F. Elementary Hadamard Difference Sets. Ph.D. Thesis, University of Maryland, College Park, MD, USA, 1975. [Google Scholar]
  11. Li, L.; Wang, L.; Zheng, D.; Zhao, Q. New construction methods on Multiple output Resilient Boolean Functions with High Nonlinearity. IEICE Trans. Fundam. Electron. Commun. Comput. Sci. 2021, 2, 87–92. [Google Scholar] [CrossRef]
  12. Forney, G.D. Concatenated Codes; Citeseer: Princeton, NJ, USA, 1966; Volume 11. [Google Scholar]
  13. Santhosh Kumar, P.; Raju, M.; Iqbul, M.A. Serial concatenated convolution codes for coded OFDM in digital audio broadcasting environment. In Proceedings of the International Conference on Intelligent Sustainable Systems, ICISS, Palladam, India, 21–22 February 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 553–558. [Google Scholar] [CrossRef]
  14. Kumar, P. Algebraic Function Fields and Codes; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2005; Volume 42, p. 676. [Google Scholar] [CrossRef]
  15. Gao, Y.; Yue, Q.; Huang, X.; Zhang, J. Hulls of Generalized Reed-Solomon Codes via Goppa Codes and Their Applications to Quantum Codes. IEEE Trans. Inf. Theory 2021, 67, 6619–6626. [Google Scholar] [CrossRef]
  16. Stichtenoth, H. A Note on Hermitian Codes Over GF(q2). IEEE Trans. Inf. Theory 1988, 34, 1345–1348. [Google Scholar] [CrossRef]
  17. Chee, S.; Lee, S.; Lee, D.; Sung, S.H. On the correlation immune functions and their nonlinearity. In Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Springer: Berlin/Heidelberg, Germany, 1996; Volume 1163, pp. 232–243. [Google Scholar] [CrossRef]
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Sosa-Gómez, G.; Paez-Osuna, O.; Rojas, O.; del Ángel Rodríguez, P.L.; Kanarek, H.; Madarro-Capó, E.J. Construction of Boolean Functions from Hermitian Codes. Mathematics 2022, 10, 899. https://doi.org/10.3390/math10060899

AMA Style

Sosa-Gómez G, Paez-Osuna O, Rojas O, del Ángel Rodríguez PL, Kanarek H, Madarro-Capó EJ. Construction of Boolean Functions from Hermitian Codes. Mathematics. 2022; 10(6):899. https://doi.org/10.3390/math10060899

Chicago/Turabian Style

Sosa-Gómez, Guillermo, Octavio Paez-Osuna, Omar Rojas, Pedro Luis del Ángel Rodríguez, Herbert Kanarek, and Evaristo José Madarro-Capó. 2022. "Construction of Boolean Functions from Hermitian Codes" Mathematics 10, no. 6: 899. https://doi.org/10.3390/math10060899

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop