Vectorial Boolean Functions

From Boolean
Revision as of 21:02, 30 December 2018 by Nikolay (talk | contribs)

Introduction

Let 𝔽2n be the vector space of dimension n over the finite field 𝔽2 with two elements. Functions from 𝔽2n to 𝔽2m are called (n,m)-functions or simply vectorial Boolean functions when the dimensions of the vector spaces are implicit or irrelevant.

Any (n,m)-function F can be written as a vector F=(f1,f2,…fn) of m-dimensional Boolean functions f1,f2,…fn which are called the coordinate functions of F.

Cryptanalytic attacks

Vectorial Boolean functions, also referred to as "S-boxes", or "Substitution boxes", in the context of cryptography, are a fundamental building block of block ciphers and are crucial to their security: more precisely, the resistance of the block cipher to cryptanalytic attacks directly depends on the properties of the S-boxes used in its construction.

The main types of cryptanalytic attacks that result in the definition of design criteria for S-boxes are the following:

  • the differential attack introduced by Biham and Shamir; to resist it, an S-box must have low differential uniformity;
  • the linear attack introduced by Matsui; to resist it, an S-box must have high nonlinearity;
  • the higher order differential attack; to resist it, an S-box must have high algebraic degree;
  • the interpolation attack; to resist it, the univariate representation of an S-box must have high degree, and its distance to the set of low univariate degree functions must be large;
  • algebraic attacks.

Generalities on Boolean functions

Walsh transform

The Walsh transform of F:𝔽2n→𝔽2m is the integer-valued function WF:𝔽2n×𝔽2m defined by

WF(u,v)=βˆ‘xβˆˆπ”½2n(βˆ’1)vβ‹…F(x)+uβ‹…x

It can be observed that the Walsh transform of some F is in fact the Fourier transform of the indicator of its graph, i.e. the Fourier transform of the function 1GF defined as

1GF(x,y)={1F(x)=y0F(x)β‰ y.

The Walsh spectrum of F is the multi-set of all the values of its Walsh transform for all pairs (u,v)βˆˆπ”½2n×𝔽2mβˆ—. The extended Walsh spectrum of F is the multi-set of the absolute values of its Walsh transform, and the Walsh support of F is the set of pairs (u,v) for which WF(u,v)β‰ 0.

Representations

Vectorial Boolean functions can be represented in a number of different ways.

Algebraic Normal Form

An (n,m)-function F can be uniquely represented as a polynomial with coefficients in 𝔽2m of the form

F(x)=βˆ‘Iβˆˆπ’«(N)aI(∏i∈Ixi)=βˆ‘Iβˆˆπ’«(N)aIxI,

where 𝒫(N) is the power set of N={1,…,n} and the coefficients aI belong to 𝔽2m. This representation is known as the algebraic normal form (ANF) of F. The algebraic degree of F, denoted d∘(F) is then defined as the global degree of its ANF, i.e.

d∘(F)= max{|I|/aIβ‰ (0,…,0);Iβˆˆπ’«(N)}

and is equal to the maximal algebraic degree of the coordinate functions of F.