Plateaued Functions

From Boolean
Revision as of 18:53, 7 February 2019 by Nikolay (talk | contribs)
Jump to navigation Jump to search

Background and Definition

A Boolean function [math]\displaystyle{ f : \mathbb{F}_{2^n} \rightarrow \mathbb{F}_2 }[/math] is said to be plateaued if its Walsh transform takes at most three distinct values, viz. [math]\displaystyle{ 0 }[/math] and [math]\displaystyle{ \pm \mu }[/math] for some positive ineger [math]\displaystyle{ \mu }[/math] called the amplitude of [math]\displaystyle{ f }[/math].

This notion can be naturally extended to vectorial Boolean functions by applying it to each component. More precisely, if [math]\displaystyle{ F }[/math] is an [math]\displaystyle{ (n,m) }[/math]-function, we say that [math]\displaystyle{ F }[/math] is plateaued if all its component functions [math]\displaystyle{ u \cdot F }[/math] for [math]\displaystyle{ u \ne 0 }[/math] are plateaued. If all of the component functions are plateaued and have the same amplitude, we say that [math]\displaystyle{ F }[/math] is plateaued with single amplitude.

Equivalence relations

The class of functions that are plateaued with single amplitude is CCZ-invariant.

The class of plateaued functions is only EA-invariant.

Relations to other classes of functions

All bent and semi-bent Boolean functions are plateaued.

Any vectorial AB function is plateaued with single amplitude.

Constructions of Boolean plateaued functions

Primary constructons

Generalization of the Maiorana-MacFarland Functions [1]

The Maiorana-MacFarland class of bent functions can be generalized into the class of functions [math]\displaystyle{ f_{\phi,h} }[/math] of the form

[math]\displaystyle{ f_{\phi,h}(x,y) = x \cdot \phi(y) + h(y) }[/math]

for [math]\displaystyle{ x \in \mathbb{F}_2^r, y \in \mathbb{F}_2^s }[/math], where [math]\displaystyle{ r }[/math] and [math]\displaystyle{ s }[/math] are any positive integers, [math]\displaystyle{ n = r + s }[/math], [math]\displaystyle{ \phi : \mathbb{F}_2^s \rightarrow \mathbb{F}_2^r }[/math] is arbitrary and [math]\displaystyle{ h : \mathbb{F}_2^s \rightarrow \mathbb{F}_2 }[/math] is any Boolean function.

The Walsh transform of [math]\displaystyle{ f_{\phi,h} }[/math] takes the value

[math]\displaystyle{ W_{f_{\phi,h}}(a,b) = 2^r \sum_{y \in \phi^{-1}(a)} (-1)^{b \cdot y + h(y)} }[/math]

at [math]\displaystyle{ (a,b) }[/math]. If [math]\displaystyle{ \phi }[/math] is injective, resp. takes each value in its image set two times, then [math]\displaystyle{ f_{\phi,h} }[/math] is plateaued of amplitude [math]\displaystyle{ 2^r }[/math], resp. [math]\displaystyle{ 2^{r+1} }[/math].

Characterization of Plateaued Functions [2]

Characterization by the Derivatives

Using the fact that a Boolean function [math]\displaystyle{ f }[/math] is plateaued if and only if the expression [math]\displaystyle{ \sum_{a,b \in \mathbb{F}_2^n} (-1)^{DaDbf(x)} }[/math] does not depend on [math]\displaystyle{ x \in \mathbb{F}_2^n }[/math], one can derive the following characterization.

Let [math]\displaystyle{ F }[/math] be an [math]\displaystyle{ (n,m) }[/math]-function. Then:

  • F is plateuaed if and only if, for every [math]\displaystyle{ v \in \mathbb{F}_2^m }[/math], the size of the set
[math]\displaystyle{ \{ (a,b) \in (\mathbb{F}_2^n)^2 : D_aD_bF(x) = v \} }[/math]

does not depend on [math]\displaystyle{ x }[/math];

  • F is plateaued with single amplitude if and only if the size of the set depends neither on [math]\displaystyle{ x }[/math], nor on [math]\displaystyle{ v \in \mathbb{F}_2^m }[/math] for [math]\displaystyle{ v \ne 0 }[/math].

Moreover:

  • for every [math]\displaystyle{ F }[/math], the value distribution of [math]\displaystyle{ D_aD_bF(x) }[/math] equals that of [math]\displaystyle{ D_aF(b) + D_aF(x) }[/math] when [math]\displaystyle{ (a,b) }[/math] ranges over [math]\displaystyle{ (\mathbb{F}_2^n)^2 }[/math];
  • if two plateaued functions [math]\displaystyle{ F,G }[/math] have the same distribution, then all of their component functions [math]\displaystyle{ u \cdot F, u\cdot G }[/math] have the same amplitude.

Power Functions

Let [math]\displaystyle{ F(x) = x^d }[/math]. Then, for every $v,x,\lambda \in \mathbb{F}_{2^n}</math> with [math]\displaystyle{ \lambda \ne 0 }[/math], we have

[math]\displaystyle{ | \{ (a,b) \in \mathbb{F}_{2^n}^2 : D_aF(b) + D_aF(x) = v \} | = | \{ (a,b) \in \mathbb{F}_{2^n}^2 : D_aF(b) + D_aF(x/\lambda) = v/\lambda^d \}|. }[/math]

Then:

  • [math]\displaystyle{ F }[/math] is plateaued if and only if, for every [math]\displaystyle{ v \in \mathbb{F}_{2^n} }[/math], we have
[math]\displaystyle{ | \{ (a,b) \in \mathbb{F}_{2^n}^2 : D_aF(b) + D_aF(1) = v \} | = | \{ (a,b) \in \mathbb{F}_{2^n}^2 : D_aF(b) + D_aF(0) = v \}|; }[/math]
  • [math]\displaystyle{ F }[/math] is plateaued with single amplitude if and only if the size above does not, in addition, depend on [math]\displaystyle{ v \ne 0 }[/math].

Functions with Unbalanced Components

Let [math]\displaystyle{ F }[/math] be an [math]\displaystyle{ (n,m) }[/math]-function. Then [math]\displaystyle{ F }[/math] is plateuaed with all components unbalanced if and only if, for every [math]\displaystyle{ v,x \in \mathbb{F}_{2}^n }[/math], we have

[math]\displaystyle{ | \{ (a,b) \in (\mathbb{F}_2^n)^2 : D_aD_bF(x) = v \}| = | \{ (a,b) \in (\mathbb{F}_2^n)^2 : F(a) + F(b) = v \}|. }[/math]

Moreover, [math]\displaystyle{ F }[/math] is plateaued with single amplitude if and only if this value does not, in addition, depend on [math]\displaystyle{ v }[/math] for [math]\displaystyle{ v \ne 0 }[/math].

  1. Camion P, Carlet C, Charpin P, Sendrier N. On Correlation-immune functions. InAdvances in Cryptology—CRYPTO’91 1992 (pp. 86-100). Springer Berlin/Heidelberg.
  2. Carlet C. Boolean and vectorial plateaued functions and APN functions. IEEE Transactions on Information Theory. 2015 Nov;61(11):6272-89.