Noname manuscript No.
(will be inserted by the editor)

Distribution of the absolute indicator of random
Boolean functions
Florian Caullery · François Rodier

arXiv:1801.03337v1 [cs.IT] 10 Jan 2018

Received: date / Accepted: date

Abstract The absolute indicator is one of the measures used to determine the
resistance offered by a Boolean function when used in the design of a symmetric cryptosystem. It was proposed along with the sum of square indicator to
evaluate the quality of the diffusion property of block ciphers and hash functions. While the behaviour of the sum of square of random Boolean functions
was already known, what remained was the study of the comportment of the
absolute indicator of random Boolean functions. As an application, we show
that the absolute indicator can distinguish a nonrandom binary sequence from
a random one.
Keywords absolute indicator · random Boolean function · autocorrelation ·
nonlinearity · finite field.
Mathematics Subject Classification (2000) 94A60 · 11T712 · 14G50
1 Introduction
Let Fn2 be the n-dimensional vector space over the finite field of 2 elements.
The Boolean functions are the functions from Fn2 to F2 . They are used in
cryptosystems as they are a convenient way to describe S-Boxes. We refer
to [Car10] for a global survey on the cryptographic applications of Boolean
This work was partially done while the first author was funded by the Instituto Nacional
de Matematica Pura e Aplicada (IMPA), Rio de Janeiro, RJ - Brazil and the foundation
of Coordenaçao de Aperfeiccoamento de Pessoal de Nivel Superior (Capes) of the Brazilian
ministry of education
F. Caullery
DarkMatter LLC, Abu Dhabi, United Arab Emirates
E-mail: florian.caullery@darkmatter.ae
F. Rodier
Institut Mathématiques de Marseille, France
E-mail: francois.rodier@univ-amu.fr

2

Florian Caullery, François Rodier

functions. There exist several ways to measure the resistance offered by a
Boolean function against specific cryptanalysis. Among them, we should mention the nonlinearity, which is the Hamming distance of the function to the set
of affine functions, the absolute indicator and the sum of squares, which are
usually grouped into the term of Global Avalanche Criterion. The two latter
were introduced in [ZZ96] to measure the capacity of a Boolean function to
ensure the propagation property of a cryptosystem. The relations between the
absolute indicator and the other cryptographic measures have been extensively
studied as well as the distribution of the absolute indicator of certain specific
classes of Boolean functions (sometimes under the name of auto-correlation
value), see for example [Zho, ZXX09, CCC+00, TKB01, ZZ01].
Another possible use of these measures was proposed by one of the the authors during a workshop bringing in industrial representatives and academics
(see the online report in [CGM+14]). The problem set out was to determine if
a short binary sequence could be pseudo-random. We proposed to see a binary
sequence of length 2n as the truth table of a Boolean function, compute its
nonlinearity and absolute indicator and compare it to the expected values of
random Boolean functions. The idea came from the fact that it was proved by
Schmidt in [Sch15], finalising the work of Rodier [Rod06], Dib [Dib10, Dib14]
and Lytsin and Shpunt [LS09], that the nonlinearity of random Boolean functions is concentrated around its expected value. Also, the same kind of result
exists for the fourth moment of the nonlinearity of random Boolean functions,
which is actually the sum of squares (see [Rod03]).
However, there did not exist a study of the distribution of the absolute
indicator of random Boolean functions, we fill the gap with our result. The
difficulty of our case arises from the fact that we are not dealing only with
independent random variables. Indeed, by writing the truth table of a Boolean
function as a binary sequence, one can see the absolute indicator as the correlation of order 2 between the sequence and its circular shift (or rotation).
Hence, we cannot straightforwardly apply estimates on sums of independent
variables. We overcome the problem by carefully analysing the dependencies
between the random variables. Also, our techniques allow us to keep the proofs
simple and only based on combinatorics. As an example, we show that a short
binary sequence would be detected to be non random with respect to the
absolute indicator while it would pass the test with nonlinearity.
We begin by defining the absolute indicator of a Boolean function and set
the formal frame for the study of the distribution of the absolute indicator.
Definition 1 Let Bn = {fn : Fn2 → F2 } be the set of the Boolean functions
of n variables and let fn ∈ Bn . For all u ∈ Fn2 , write
X
∆fn (u) :=
(−1)fn (x)+fn (x+u) .
x∈Fn
2

The absolute indicator of fn is defined by
∆(fn ) :=

max

u∈Fn
2 −{0}

|∆fn (u)|.

Distribution of the absolute indicator of random Boolean functions

3

Our goal is to show the following theorem on the distribution of the absolute indicator of random Boolean functions. We denote by E(X) the expectation of a random variable X and by fn : Fn2 → F2 a random Boolean function
running over the set Bn provided with equiprobability.
Theorem 1 The expectation of the absolute indicator has the following limit:
E[∆(f )]
√ n n n →2
2 log 2
as n → ∞. Moreover,
P




∆(fn )
√ n
−
1
>
ǫ
→0
2 2 log 2n

for all ǫ > 0 as n → ∞.
The strategy to prove this result is based on ideas developed in [Sch14]
and in [Rod03] with suitable alteration and on an idea in [AS00]. The main
difference in our case is that the estimation of the expected value of the absolute indicator involves dealing with non-independent random variables. By
separating the dependent and independent parts in the expectation, we are
able to apply classical results from martingales theory and then derive the
best estimation possible. To sum up, we first prove that, for all ǫ > 0,


E[∆(fn )]
P √ n
>2+ǫ →0
2 log 2n
as n → ∞ and then show that, for all δ > 0, the set


E[∆(fn )]
<2−δ
N (δ) = n > 1 : √ n
2 log 2n
is finite. Moreover, in the last section, we prove that the absolute
√ indicator of
a random Boolean function converges almost surely towards 2 2n log 2n .
This article is an expansion of a paper which was presented at WCC17
[CR17].
We begin with preliminary lemmata which shall be used in the fourth
section to prove Theorem 1.

2 Preliminary lemmata
From now on we set l = 2n .
Lemma 1 For all ǫ > 0, as n → ∞,


∆(fn )
> 2 + ǫ → 0.
P √
l log l

4

Florian Caullery, François Rodier

√
Proof Write µl = (2 + ǫ) l log l. The union bound gives:
X
P(|∆fn (u)| > µl ).
P(∆(fn ) > µl ) ≤
u∈Fn
2 −{0}

Now note the trivial fact that fn (x) + fn (x + u) = fn (x + u) + fn (x + u + u).
Hence, choosing one subset Cu ⊂ Fn2 of maximal cardinality such that if x ∈
Cu , then x + u 6∈ Cu , we can write
X
∆fn (u) = 2
Xx,u ,
x∈Cu

where Xx,u = (−1)fn (x)+fn (x+u) . Since fn is drawn at random, we know from
proposition 1.1 of [Mer06] that the Xx,u ’s are independent random variables
equally likely to take the value −1 or +1. We can now apply Corollary A.1.2
of [AS00] with k = ♯Cu = l/2 to obtain
 X

X
X
P
P(|∆fn (u)| > µl ) =
Xx,u > µl /2
u∈Fn
2 −{0}

u∈Fn
2 −{0}

≤ 2le

x∈Cu

−µ2l /4l

< 2l−ǫ

which tends to 0 as n → ∞.

⊓
⊔

We now prove a lower bound on P(∆(f ) > λ). We need the following
refinement of the central limit theorem.
Lemma 2 ( [Cra38], Thm. 2) Let X0 , X1 , . . . be i.i.d random variables
satisfying E[X0 ] = 0 and E[X02 ] = 1 and suppose that there exists T > 0 such
that E[etX0 ] < ∞ for all |t| < T . Write Yk = X0 + X1 + . . . + Xk−1 and let Φ
be the distribution function of a normal random variable with zero mean and
unit variance. If θk > 1 and θk /k 1/6 → 0 as n → ∞, then
h
√ i
P |Yk | ≥ θk k
→ 1.
2Φ(−θk )
We can now apply lemma 2 to obtain the following proposition.
Proposition 1 For all n sufficiently large,
h
i
p
P |∆fn (u)| ≥ 2 l log l ≥

1
√
.
2l log l

Proof From the proof of lemma 1, we know that ∆fn (u) is the double of a sum
of l/2 mutually independent variables equally likely to take the value −1 or 1.
√
fn (0)+fn (u)
Notice that E[et(−1)
] = cosh(t) and set ξl = 2 log l. We can check
that ξl /(l/2)1/6 → 0 as n → ∞ and we can now apply lemma 2 to obtain
 X

h
i
p
p
P |∆fn (u)| ≥ 2 l log l = P
(−1)fn (x)+fn (x+u) ≥ l log l ∼ 2Φ(−ξl )
x∈Cu

Distribution of the absolute indicator of random Boolean functions

with Φ as in lemma 2. Now use the fact that


2
2
1
1
1
√
1 − 2 e−z /2 ≤ Φ(−z) ≤ √
e−z /2
z
2πz
2πz

5

for z > 0.

So, as l → ∞,

1
2Φ(−ξn ) ∼ √
,
l π log l
from which the lemma follows.

⊓
⊔

3 Upper bound on P [|∆fn (u)| ≥ λl ∩ |∆fn (v)| ≥ λl ]
We will proceed by first estimating the expected value of (∆fn (u)∆fn (v))
and then use Markov’s inequality.

2p

Let 0 < r < l and choose r elements x1 , . . . , xr in Fn2 , let fn be a random function in Bn , and write f˜ = (−1)fn . First remark that the following
properties trivially hold:
– E[f˜(x1 )f˜(x2 ) . . . f˜(xr )] = E[f˜(x3 )f˜(x4 ) . . . f˜(xr )] if x1 = x2
– E[f˜(x1 )f˜(x2 ) . . . f˜(xr )] = 0 or 1
– E[f˜(x1 )f˜(x2 ) . . . f˜(xr )] = 1 if and only if for every y ∈ Fn2 the set of the
xi ’s equals to y is of even cardinality.
Choose r elements a1 , . . . , ar of Fn2 and define
h
i
X
E f˜(x1 )f˜(x1 + a1 ) . . . f˜(xr )f˜(xr + ar ) .
E[a1 , . . . , ar ] =
n
n
(x1 ,...,xr )∈Fn
2 ×F2 ×...×F2

Lemma 3 For a ∈ Fn2 , a 6= 0, the following inequality is true:
X
E[a, a1 , . . . , ar ] ≤ 2
E[a1 , . . . , ai + a, . . . , ar ].
1<i≤r

Proof (see [Rod03]) From the previously stated properties, we can write
E[a, a1 , . . . , ar ]
i
h
X
E f˜(x)f˜(x + a)f˜(x1 )f˜(x1 + a1 ) . . . f˜(xr )f˜(xr + ar )
=
(x,x1 ,...,xr )

=

X

(x1 ,...,xr )

i
X h
E f˜(x)f˜(x + a)f˜(x1 )f˜(x1 + a1 ) . . . f˜(xr )f˜(xr + ar ) ,

where the last summand is taken over x ∈ {x1 , x1 + a1 , . . . , xr , xr + ar }. If
x = x1 ,
h
i
E f˜(x)f˜(x + a)f˜(x1 )f˜(x1 + a1 ) . . . f˜(xr )f˜(xr + ar )
h
i
= E f˜(x1 + a)f˜(x1 + a1 ) . . . f˜(xr )f˜(xr + ar )
h
i
= E f˜(t)f˜(t + a1 + a)f˜(x1 )f˜(x1 + a1 ) . . . f˜(xr )f˜(xr + ar ) ,

6

Florian Caullery, François Rodier

putting t = x1 + a1 . In the same way, if x = x1 + a1
h
i
E f˜(x)f˜(x + a)f˜(x1 )f˜(x1 + a1 ) . . . f˜(xr )f˜(xr + ar )
h
i
= E f˜(x1 )f˜(x1 + a + a1 ) . . . f˜(xr )f˜(xr + ar ) .

⊓
⊔

With this lemma we will show the following.
Lemma 4 Let r and s ≥ 2 be integers, a and b be distinct elements of Fn2 −{0}
and define Sr,s = E[a, . . . , a, b, . . . , b]. We have
| {z } | {z }
r

s

Sr,s ≤ 2(s − 1)(l + 2r)Sr,s−2 + 4r(r − 1)Sr−2,s .

Proof By successive application of the inequality stated in lemma 3, we obtain
Sr,s ≤ 2(s − 1)lSr,s−2 + 2rE[a + b, a, . . . , a, b, . . . , b]
|
{z
} | {z }
r

s

≤ 2(s − 1)lSr,s−2 + 4r(r − 1)E(b, a, . . . , a, b, b, . . . , b)
| {z } | {z }
r−1

s−1

+ 4r(s − 1)E(a, . . . , a, a, b, . . . , b)
| {z } | {z }
r−1

s−1

≤ 2(s − 1)(l + 2r)Sr,s−2 + 4r(r − 1)Sr−2,s .
⊓
⊔
In the case where r = 0 and s is even, the lemma gives
s!
S0,s ≤ (2(s−1)l)E[a, . . . , a] ≤ (2(s−1)l)(2(s−3)l) . . . ((2.3l)(2l)) ≤ ls/2
.
| {z }
(s/2)!
s−2

We write Mr = lr/2 r!/(r/2)!, therefore S0,s ≤ Ms . We get from the preceding
Lemma, assuming that r, s ≥ 2:
Sr,s−2
Sr−2,s
Sr,s
≤ (1 + rl−1 )
+ 2rl−1
.
Mr Ms
Mr Ms−2
Mr−2 Ms
Lemma 5 For 2 ≤ r ≤ s, r and s both even and putting t = (r + s)/2, we get
Sr,s
≤
Mr Ms


1+

2rs
l(t − 1)

(t−1)

.

(1)

Proof We will proceed by induction. The inequality is clearly true for r =
2rs
s = 2. Hence we can suppose 2 ≤ r ≤ s and t > 2. Write ar,s = 1 + l(t−1)

Distribution of the absolute indicator of random Boolean functions

7

with t = (r + s)/2. Suppose now that the relation (1) is true for
Sr−2,s
Mr−2 Ms .

Sr,s−2
Mr Ms−2

and

It implies

Sr,s−2
Sr−2,s
Sr,s
≤ (1 + rl−1 )
+ 2rl−1
Mr Ms
Mr Ms−2
Mr−2 Ms

= 1 + 2rl−1 (ar,s−2 )(t−2) + 2rl−1 (ar−2,s )(t−2)


s−2
(t−2)
(t−2)
(t−1)
(ar,s−2 )
+ 2rl−1 (ar−2,s )
.
= (ar,s−2 )
+ 2rl−1 1 −
t−2
Observe that 1 −
(t−1)

(ar,s )

s−2
t−2

− (ar,s−2 )

s−r
= − 2(t−2)
. So we want to show that the sum
(t−1)

s−r
(t−2)
(t−2)
(ar,s−2 )
− 2rl−1 (ar−2,s )
2(t − 2)
(2)
2r(s−2)
= l(t−2)(t−1)
≥ 0, from which we deduce

+ 2rl−1

is positive. One has ar,s − ar,s−2

t−2

(ar,s )

t−1

(t−1)

− (ar,s−2 )

=

2r(r − 2) X
i
(t−2−i)
(ar,s ) (ar,s−2 )
.
l(t − 1)(t − 2) i=0

By dividing the sum (2) by 2r/l and using 2 ≤ r ≤ s we get:
t−2

X
(r − 2)
s−r
i
(t−2−i)
t−2
t−2
(ar,s ) (ar,s−2 )
+
(ar,s−2 )
− (ar−2,s )
(t − 1)(t − 2) i=0
2(t − 2)


r−2
s−r
t−2
≥ (ar−2,s )
+
−1 .
t−2
2(t − 2)
because 2r(s − 2) − 2s(r − 2) = 4(s − r) ≥ 0 and consequently
ar,s ≥ ar,s−2 ≥ ar−2,s .
Finally, we verify that

r−2
t−2

+

s−r
2(t−2)

− 1 = 0.

⊓
⊔

Now, we can conclude that
S2p,2p ≤ l2p



(2p)!
p!

2 
1+

8p2
l(2p − 1)

2p−1

,

which will be used to prove the following:
√
Proposition 2 Write λl = 2 l log l. If fn runs over the set Bn then, for
distinct u, v ∈ Fn2 − {0} and n sufficiently large,
P [|∆fn (u)| ≥ λl ∩ |∆fn (v)| ≥ λl ] < 4l−2 .

8

Florian Caullery, François Rodier

Proof With the notation of previous lemmas and applying Markov’s inequality:
 X
 X

˜
˜
˜
˜
P
f (x)f (x + u) ≥ θ1 ∩
f (x)f (x + v) ≥ θ2
x∈Fn
2

≤E

 X

x∈Fn
2

f˜(x)f˜(x + u)

x∈Fn
2

X

x∈Fn
2

≤ S2p,2p /(θ1 θ2 )2p


≤ 1+

2p .
f˜(x)f˜(x + v)
(θ1 θ2 )2p

8p2
l(2p − 1)

2p−1

l2p



(2p)!
p!

2 .

(θ1 θ2 )2p

.

(3)

If we take θ1 = θ2 = λl and p = n, we have
 X
  X

˜
˜
˜
˜
P
f (x)f (x + u) ≥ λl ∩
f (x)f (x + v) ≥ λl
x∈Fn
2

x∈Fn
2


≤ 1+

2n−1 
2
8n2
(2n)! .
(4n)2n .
l(2n − 1)
n!
√
√
By Stirling’s approximation, 2πkk k e−k ≤ k! ≤ 3πkk k e−k , we get
√
3π2n(2n)2n e−2n √ 2n n −n
(2n)!
√
≤ 3.2 n e .
≤
n!
2πnnn e−n
Plugging it into inequality 3, we get:
 X
  X

P
f˜(x)f˜(x + u) ≥ λl ∩
f˜(x)f˜(x + v) ≥ λl
x∈Fn
2

x∈Fn
2


≤3 1+

8n2
l(2n − 1)

2n−1

for n ≥ 7. The proposition is now straightforward.

e−2n < l−2

⊓
⊔

4 Proof of theorem 1
We first recall the following inequality from martingales theory:
Lemma 6 ( [McD89]) Let X0 , . . . , Xl−1 be mutually independent random
variables taking values in a set S. Let g : S l → R be a measurable function
and suppose that
|g(x) − g(y)| ≤ c
whenever x and y differ only in one coordinate. Define the random variable
Y = g(X0 , . . . , Xl−1 ). Then, for all θ ≥ 0,
 2θ2 
P [|Y − E[Y ]| ≥ θ] ≤ 2 exp − 2 .
c l

Distribution of the absolute indicator of random Boolean functions

9

Now let (xi )0≤i≤l−1 be a bijection between the set of nonnegative numbers
strictly smaller than l and the set Fn2 . Let σu for u ∈ Fn2 be the substitution
in the set {0, . . . , l − 1} such that xσu (i) = xi + u and let g be the function
g : {0, 1}l → R
(X0 , . . . , Xl−1 ) 7→

max
n

u∈F2 −{0}

l−1
X

(−1)Xi +Xσu (i) .

i=0

Clearly g(f (x0 ), . . . , f (xl−1 )) = ∆(f ) and we can apply lemma 6 with c = 4
to obtain the following corollary.
Corollary 1 For θ ≥ 0,

 θ2 
P [|∆(fn ) − E[∆(fn )]| ≥ θ] ≤ 2 exp −
.
8l

The first part of Theorem 1 is proven by the following result.
Theorem 2 The following limit holds when n → ∞,
E [∆(fn )]
√
→ 2.
l log l
Proof By the union bound and triangle inequality, we have, for all ǫ > 0


E [∆(fn )]
−2>ǫ
P √
l log l




∆(fn )
1
1
∆(fn )
E [∆(fn )]
−√
> ǫ +P √
−2> ǫ .
≤P √
2
2
l log l
l log l
l log l
The right hand side of the last inequality goes to zero as n → ∞ by corollary
1 and proposition 1. So we conclude
E [∆(fn )]
≤ 2.
lim sup √
l log l
n→∞
The proof of the claim is based on an idea in [LS09]: to bound by below
we will prove that the following set is finite. Let δ > 0 and define


E [∆(fn )]
N (δ) = n > 1 : √
<2−δ .
l log l
√
Now set λl = 2 l log l and, for each n ≥ 7, chose a subset W ⊂ Fn2 − {0} of
size ⌈l/ log l⌉. Hence
i
h
P [∆(fn ) ≥ λl ] ≥ P max |∆fn (u)| ≥ λl
u∈W
X
X
≥
P [|∆fn (u)| ≥ λl ] −
P [|∆fn (u)| ≥ λl ∩ |∆fn (v)| ≥ λl ]
E[∆(fn )]
√
,
l log l

u∈W

u,v∈W,u6=v

10

Florian Caullery, François Rodier

by Bonferroni inequality. Propositions 1 and 2 give, for l big enough:
|W |2
1
−4 2
P [∆(fn ) ≥ λl ] ≥ |W | √
l
2l log l
1
≥
.
10(log l)3/2

(4)

By definition of N (δ), λl ≥ E[∆(fn )] so we can apply corollary 1 with λl −
E[∆(fn )] so that for all n ∈ N (δ),

 1
P [∆(fn ) ≥ λl ] ≤ 2 exp − (λl − E[∆(fn )])2 .
8l
Comparison with (4) implies
E[∆(fn )]
√
≥2−
l log l

s

12 log log l + 8 log 20
,
log l

which means in view of its definition that N (δ) is finite for all δ > 0.

⊓
⊔

We can now easily deduce the second part of Theorem 1.
Corollary 2 As n → ∞,
∆(fn )
√
→2
l log l

in probability.

Proof By the triangle inequality
P




∆(fn )
√
−2 >ǫ
l log l




E [∆(fn )]
ǫ
ǫ
E [∆(fn )]
∆(fn )
√
− √
−2 >
>
+P
. (5)
≤P √
2
2
l log l
l log l
l log l

By Theorem 2 and Corollary 1, the two terms on the right-hand side go to
0 as n → ∞ which proves the corollary.
⊓
⊔
The combination of these two last theorems gives the proof of Theorem 1.

5 Stronger convergence
The goal of this section is to use the Borel-Cantelli Lemma to prove the following Theorem:

Distribution of the absolute indicator of random Boolean functions

11

Theorem 3 Denote by Ω the set of infinite sequences of elements of F2 and
by B the space of functions from Ω to F2 . For every f ∈ B, we denote its restriction to its n first coordinates by fn which is in Bn . We define the following
probability measure on B:
n

P[f ∈ B : fn = g ∈ Bn ] = 2−2

for all g ∈ Bn . Now let f be a random element in B. Then
∆(fn )
= 2 almost surely.
lim √
n→∞
l log l
Proof Let f be a random element in B and fn its restriction. We know from
the proof of Theorem 1 that the inequality (5) is true. By Theorem 2, the
second term of the right hand side in (5) is null for n sufficiently large. From
ǫ2

Corollary 1, the first term is bounded by 2l− 32 = 2
ǫ > 0:


∞
X
∆(fn )
− 2 > ǫ < ∞.
P √
l log l
n=1

−nǫ2 +32
32

Now applying the Borel-Cantelli Lemma gives the theorem.

. Therefore, for

⊓
⊔

6 The non-linearity vs the autocorrelation
6.1 Application: a test on Boolean functions
The article [CGM + 14] proposes as application of the absolute indicator a
test on the Boolean functions to know if a random Boolean function (for example given by a True Random Number Generator) would be reliable (see the
Introduction). We will show here that autocorrelation can sometimes detect a
function that cannot pass the test whereas with non-linearity it does.
Indeed a common weakness in random function generators is that a function can always loop, that is, it can be periodic. We will see that a function with
two periods can pass the test of non-linearity, but not that of autocorrelation.

6.2 Two periods function
Let a Boolean function on Fn2 be defined by
f : Fn2 = F2n−1 × F2 −→ F2
(x, 0) 7−→ g(x)
(x, 1) 7−→ g(x).
where g is a Boolean function on F2n−1 .

12

Florian Caullery, François Rodier

6.2.1 The nonlinearity
We want to compute the nonlinearity of f based on that of g.
Proposition 3 The nonlinearity of f (computed in Fn2 ) is the double of the
nonlinearity of g (computed in F2n−1 ).
Proof Using the formulas
N L(f ) = 2n−1 − 1/2 maxn |fb(u)|
u∈F2

and

fb(u) =

X

(−1)f (x)+x.u

x∈Fn
2

and by taking u = (v, a) for v ∈ F2n−1 and a ∈ F2 , it is an easy matter to show
that fb(v, 0) = 2b
g(v) , fb(v, 1) = 0. Therefore N L(f ) = 2N L(g).
⊓
⊔

To perform the test we need to compare this nonlinearity to the one of random Boolean functions. Using the calculation of Litsyn and Shpunt [LS09], we
see that with a probability of O(1/n4 ) most of the function with n variables will
√
lie in [lowN Ln , highN Ln ] with lowN Ln =2n−1 − 2n−1 (n log 2+3.5 log(n log 2)+0.125)
√
and highN Ln =2n−1 − 2n−1 (n log 2−4.5 log(n log 2)). As we want to determine the
pseudo-randomness of only short sequences (say n < 20) we have
2lowN Ln−1 < lowN Ln < 2highN Ln−1 < highN Ln.
This means that the segment supporting the nonlinearity of most functions
with a non-linearity close to 2N L(g) intersect the segment supporting the nonlinearity of most random Boolean functions with n variables. So the function
f is likely to pass the test.
6.2.2 The autocorrelation
Proposition 4 The autocorrelation of f is 2n .
Proof If we take u = (0, . . . , 0, 1) = (0, 1) ∈ F2n−1 × F2 it is straigthforward to
check that
∆(f ) = ∆f (u) = 2n .
⊓
⊔
This value is quite different frompthe value expected for the autocorrelation
of most of the functions which is 2 2n log(2n ). Hence the function f will not
pass the test with autocorrelation, as with nonlinearity it may.

Distribution of the absolute indicator of random Boolean functions

13

6.3 Disturbed two period function
We want to stress the fact that this phenomenon still exist if the function is
slightly disturbed (by a noise for instance).
Define inductively a sequence (fi )0≤i≤r such that f0 = f , and fi+1 is is
obtained from fi by choosing a random value i in the truth table of fi and
changing the sign of fi (ui ). So the Boolean function fr is equal to f , except
for a set E of r points.
6.3.1 The autocorrelation
Proposition 5 The autocorrelation of fr fulfills
∆(fr ) ≥ 2n − 4r
where r is the number of errors in fr with respect to f .
Proof Let us take u = (0, . . . , 0, 1) = (0, 1) ∈ F2n−1 × F2 . Then
∆fr (0, 1) =

X

(−1)fr (x)+fr (x+u) +

≥

x∈Fn
/
∈E
/
2 ,x∈E,x+u

(−1)fr (x)+fr (x+u)

x∈Fn
2 ,x∈E∪(E+u)

x∈Fn
/
∈E
/
2 ,x∈E,x+u

X

X

(−1)f (x)+f (x+u) − 2r

≥ 2n − 4r

/ E, x + u ∈
/ E. Therefore
because fr (x + u) = fr (x) if x ∈ Fn2 , x ∈
∆(fr ) = sup ∆fr (u) ≥ ∆fr (0, 1) ≥ 2n − 4r.
u

⊓
⊔
6.3.2 The nonlinerarity
Proposition 6 The nonlinearity of fr is such that
N L(f ) − r ≤ N L(fr ) ≤ N L(f ) + r.
Proof The nonlinearity of a Boolean function is the minimum of the number
of bits that you need to change in the truth table of this function to get
an affine function. To get fr from f you have to change at most r bits. So
N L(f ) ≤ N L(fr ) + r. To get f from fr you have to change at most r bits. So
N L(fr ) ≤ N L(f ) + r. The conclusion follows.
⊓
⊔
One can even get a more precise estimate of the nonlinearity.
Proposition 7 The following inequality is true:
2

P (|N L(fr )) − N L(f )| > s) ≤ 2e−s

/2r

.

14

Florian Caullery, François Rodier

Proof Let we define a random variable
PrXi for 1 ≤ i ≤ r by Xi = N L(fi ) −
N L(fi−1 ) so that N L(fr ) − N L(f ) = 1 Xi . These perturbation are independent, so Chernoff bound gives the following result:

 X
r
2
P
Xi > s < 2e−s /2r .
1

Whence the result.

⊓
⊔

This proposition shows that the nonlinearity of fr does not deviate too
much from the nonlinearity of f . Hence again a function slightly disturbed
will pass the test for nonlinearity, as it will not for autocorrelation.
7 Conclusion
We proved that the absolute indicator of most of the Boolean functions is close
to a small value. Thus we draw the following conclusions:
– One should not consider the absolute indicator of a Boolean function as
a primary criterion in the design of symmetric cryptographical primitives
but focus on other properties relevant to his desired application. The attention should be also given to, for example, simplicity of the algebraic
expression (to allow easy bitsliced or efficient hardware implementation)
or nonlinearity. Once a Boolean function is selected, the designer should
only verify that the absolute indicator is not too far from the expected
value.
– Regarding the application of the absolute indicator proposed in [CGM+14],
one can say that this test would have an clearly favour type I errors against
type II errors, i.e., a string not passing the test is certainly not random
while we cannot guaranty that a string passing the test is “truly” random.
– As an example of this test, we have shown that some short binary sequence
would be detected to be non random with the absolute indicator while it
would pass the test with nonlinearity.
References
AS00.

Noga Alon and Joel H. Spencer, The probabilistic method, Wiley & Sons, Hoboken, NJ, USA (2000).
CCC+00. Anne Canteaut, Claude Carlet, Pascale Charpin, et al., Propagation characteristics and correlation-immunity of highly nonlinear Boolean functions. In:
Advances in Cryptology EUROCRYPT 2000, Springer, pp. 507-522 (2000).
Car10.
Carlet, Claude, Boolean Models and Methods in Mathematics, Computer Science, and Engineering, Cambridge University Press, New York, NY, USA, pp
398-469, (2010).
CGM+14. Florian Caullery, Alexander Getmanenko, Vito Mandorino, et al. Semaine
d’Etude Mathématiques et Entreprises 9 : Testing the reliability of a
true random generator at run time, working paper or preprint, url:
https://hal.archives-ouvertes.fr/hal-01021026 (Apr. 2014).

Distribution of the absolute indicator of random Boolean functions
CR17.

Cra38.
Dib10.

Dib14.
LS09.
McD89.

Mer06.
Rod03.
Rod06.
Sch14.
Sch15.
TKB01.

ZZ96.

ZZ01.

Zho.

ZXX09.

15

Florian Caullery, François Rodier, Distribution of the absolute indicator of
random Boolean functions, Proceedings of The Tenth International Workshop
on Coding and Cryptography, http://wcc2017.suai.ru/proceedings.html ,
(2017).
H. Cramer, Sur un nouveau théorème limite de la théorie des probabilités. In:
Actualités Sci. Indust. 736 , pp. 5-23 (1938)
Stéphanie Dib, Distribution of Boolean Functions According to the SecondOrder Nonlinearity. In: Arithmetic of Finite Fields: Third International Workshop, WAIFI 2010, Istanbul, Turkey, June 27-30, pp. 86-96 (2010).
Stéphanie Dib, Asymptotic Nonlinearity of Vectorial Boolean Functions, In:
Cryptography Commun, 6.2, pp. 103-115 (2014).
Simon Litsyn and Alexander Shpunt, On the Distribution of Boolean Function
Nonlinearity. In: SIAM Journal on Discrete Mathematics 23.1, pp. 79-95 (2009).
Colin McDarmid, On the method of bounded differences. In: Surveys in Combinatorics, Ed. by J. Siemons. Vol. 141, London Mathematical Society Lectures
Notes, Cambridge Univ. Press, Cambridge, pp. 148-188 (1989).
Idris David Mercer. Autocorrelations of random binary sequences. In: Combinatorics, Probability and Computing 15.05, pp. 663- 671 (2006).
François Rodier, On the nonlinearity of Boolean functions. In: Proceedings of
WCC2003, Workshop on coding and cryptography, pp. 397-405 (2003).
François Rodier, Asymptotic nonlinearity of Boolean functions. In: Des. Codes
Cryptogr. 40.1, pp. 59-70 (2006).
Kai-Uwe Schmidt, The peak sidelobe level of random binary sequences. In:
Bulletin of the London Mathematical Society (2014),
Kai-Uwe Schmidt, Nonlinearity measures of random Boolean functions. In:
Cryptography and Communications, pp. 1-9 (2015).
Yuriy Tarannikov, Peter Korolev, and Anton Botev, Advances in Cryptology—ASIACRYPT 2001 Proceedings, In: Chap. Autocorrelation Coefficients
and Correlation Immunity of Boolean Functions, pp. 460-479 (2001).
Xian-Mo Zhang and Yuliang Zheng, GACthe criterion for global avalanche characteristics of cryptographic functions. In: J. UCS The Journal of Universal Computer Science, Springer, pp. 320-337 (1996).
Xian-Mo Zhang and Yuliang Zheng, Information Security and Cryptology,
ICISC 2000 Proceedings. In: Chap. New Results on Correlation Immunity, pp.
49-63 (2001).
Y. Zhou, On the distribution of auto-correlation value of balanced Boolean
functions. In: Advances in Mathematics of Communications 7.3, pp. 335-347
(2013)
Y. Zhou, M. Xie, and G. Xiao. On cross-correlation properties of Boolean functions. In: Communications and Networking in China, ChinaCOM 2009, Fourth
International Conference on Communications and Networking in China, pp. 1-5
(2009).

