Changing Points in APN Functions Nikolay S. Kaleyski (joint work - - PowerPoint PPT Presentation

changing points in apn functions
SMART_READER_LITE
LIVE PREVIEW

Changing Points in APN Functions Nikolay S. Kaleyski (joint work - - PowerPoint PPT Presentation

Changing Points in APN Functions Nikolay S. Kaleyski (joint work with Lilya Budaghyan, Claude Carlet and Tor Helleseth) University of Bergen June 18, 2018 Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18,


slide-1
SLIDE 1

Changing Points in APN Functions

Nikolay S. Kaleyski (joint work with Lilya Budaghyan, Claude Carlet and Tor Helleseth)

University of Bergen

June 18, 2018

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 1 / 17

slide-2
SLIDE 2

Introduction Preliminaries

Preliminaries

consider F : F2n → F2n;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 2 / 17

slide-3
SLIDE 3

Introduction Preliminaries

Preliminaries

consider F : F2n → F2n; derivative DaF(x) = F(x) + F(a + x);

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 2 / 17

slide-4
SLIDE 4

Introduction Preliminaries

Preliminaries

consider F : F2n → F2n; derivative DaF(x) = F(x) + F(a + x); ∆F(a, b) = #{x ∈ F2n : DaF(x) = b};

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 2 / 17

slide-5
SLIDE 5

Introduction Preliminaries

Preliminaries

consider F : F2n → F2n; derivative DaF(x) = F(x) + F(a + x); ∆F(a, b) = #{x ∈ F2n : DaF(x) = b}; differential uniformity ∆F = maxa∈F∗

2n,b∈F2n ∆F(a, b); Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 2 / 17

slide-6
SLIDE 6

Introduction Preliminaries

Preliminaries

consider F : F2n → F2n; derivative DaF(x) = F(x) + F(a + x); ∆F(a, b) = #{x ∈ F2n : DaF(x) = b}; differential uniformity ∆F = maxa∈F∗

2n,b∈F2n ∆F(a, b);

measures resistance to differential cryptanalysis;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 2 / 17

slide-7
SLIDE 7

Introduction Preliminaries

Preliminaries

consider F : F2n → F2n; derivative DaF(x) = F(x) + F(a + x); ∆F(a, b) = #{x ∈ F2n : DaF(x) = b}; differential uniformity ∆F = maxa∈F∗

2n,b∈F2n ∆F(a, b);

measures resistance to differential cryptanalysis; always even;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 2 / 17

slide-8
SLIDE 8

Introduction Preliminaries

Preliminaries

consider F : F2n → F2n; derivative DaF(x) = F(x) + F(a + x); ∆F(a, b) = #{x ∈ F2n : DaF(x) = b}; differential uniformity ∆F = maxa∈F∗

2n,b∈F2n ∆F(a, b);

measures resistance to differential cryptanalysis; always even; F is Almost Perfect Nonlinear (APN) if ∆F = 2.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 2 / 17

slide-9
SLIDE 9

Introduction Preliminaries

Preliminaries (2)

unique univariate representation of any (n, n)-function as F(x) =

2n−1

  • i=0

cixi, ci ∈ F2n.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 3 / 17

slide-10
SLIDE 10

Introduction Preliminaries

Preliminaries (2)

unique univariate representation of any (n, n)-function as F(x) =

2n−1

  • i=0

cixi, ci ∈ F2n. algebraic degree of F is deg(F) = max

i:ci=0 w2(i)

where w2(i) is the two-weight of i.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 3 / 17

slide-11
SLIDE 11

Introduction Preliminaries

Preliminaries (2)

unique univariate representation of any (n, n)-function as F(x) =

2n−1

  • i=0

cixi, ci ∈ F2n. algebraic degree of F is deg(F) = max

i:ci=0 w2(i)

where w2(i) is the two-weight of i. Walsh Transform of F is the function W : F2

2n → Z defined as

W (a, b) =

  • x∈F2n

(−1)Tr(bF(x)+ax) where Tr : F2n → F2 is the absolute trace function.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 3 / 17

slide-12
SLIDE 12

Introduction Preliminaries

Preliminaries (3)

Fb : F2n → F2 defined as Fb(x) = Tr(bF(x)) for b ∈ F2n are the component functions of F;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 4 / 17

slide-13
SLIDE 13

Introduction Preliminaries

Preliminaries (3)

Fb : F2n → F2 defined as Fb(x) = Tr(bF(x)) for b ∈ F2n are the component functions of F; the Hamming distance between two functions F and G is d(F, G) = #{x : F(x) = G(x)};

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 4 / 17

slide-14
SLIDE 14

Introduction Preliminaries

Preliminaries (3)

Fb : F2n → F2 defined as Fb(x) = Tr(bF(x)) for b ∈ F2n are the component functions of F; the Hamming distance between two functions F and G is d(F, G) = #{x : F(x) = G(x)}; the nonlinearity of F is NL(F) = max

b∈F∗

2n min

a∈F2n d(Fb, a)

with the last minimum over all affine a : F2n → F2;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 4 / 17

slide-15
SLIDE 15

Introduction Preliminaries

Preliminaries (3)

Fb : F2n → F2 defined as Fb(x) = Tr(bF(x)) for b ∈ F2n are the component functions of F; the Hamming distance between two functions F and G is d(F, G) = #{x : F(x) = G(x)}; the nonlinearity of F is NL(F) = max

b∈F∗

2n min

a∈F2n d(Fb, a)

with the last minimum over all affine a : F2n → F2; Useful formula: NL(F) = 2n−1 − 1 2 max

b∈F∗

2n,a∈F2n |WF(a, b)|. Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 4 / 17

slide-16
SLIDE 16

Introduction Changing One Point

Changing a Single Point in a Function

research on constructions of i.a. APN functions is ongoing;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 5 / 17

slide-17
SLIDE 17

Introduction Changing One Point

Changing a Single Point in a Function

research on constructions of i.a. APN functions is ongoing; maximum algebraic degree of APN function is an open problem:

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 5 / 17

slide-18
SLIDE 18

Introduction Changing One Point

Changing a Single Point in a Function

research on constructions of i.a. APN functions is ongoing; maximum algebraic degree of APN function is an open problem: is it possible to have deg(F) = n for F over F2n APN?

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 5 / 17

slide-19
SLIDE 19

Introduction Changing One Point

Changing a Single Point in a Function

research on constructions of i.a. APN functions is ongoing; maximum algebraic degree of APN function is an open problem: is it possible to have deg(F) = n for F over F2n APN? “On upper bounds for algebraic degrees of APN functions” (Budaghyan, Carlet, Helleseth, Li, Sun): changing one point in a given function F by G(x) = F(x) + (1 + (x + u)2n−1)v =

  • F(x)

x = u F(u) + v x = u.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 5 / 17

slide-20
SLIDE 20

Introduction Changing Multiple Points

Changing Multiple Points in a Function

Given natural K ≥ 1 and F : F2n → F2n, construct G by changing K points:

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 6 / 17

slide-21
SLIDE 21

Introduction Changing Multiple Points

Changing Multiple Points in a Function

Given natural K ≥ 1 and F : F2n → F2n, construct G by changing K points:

select u1, u2, . . . , uk from F2n with #{u1, u2, . . . , uK} = K;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 6 / 17

slide-22
SLIDE 22

Introduction Changing Multiple Points

Changing Multiple Points in a Function

Given natural K ≥ 1 and F : F2n → F2n, construct G by changing K points:

select u1, u2, . . . , uk from F2n with #{u1, u2, . . . , uK} = K; select v1, v2, . . . , vk from F∗

2n;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 6 / 17

slide-23
SLIDE 23

Introduction Changing Multiple Points

Changing Multiple Points in a Function

Given natural K ≥ 1 and F : F2n → F2n, construct G by changing K points:

select u1, u2, . . . , uk from F2n with #{u1, u2, . . . , uK} = K; select v1, v2, . . . , vk from F∗

2n;

define G as G(x) = F(x) +

K

  • i=1

(1 + (x + u1)2n−1)vi =

  • F(x)

x / ∈ U F(ui) + vi x = ui, i ∈ {1, 2, . . . , K}.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 6 / 17

slide-24
SLIDE 24

Introduction Changing Multiple Points

Changing Multiple Points in a Function

Given natural K ≥ 1 and F : F2n → F2n, construct G by changing K points:

select u1, u2, . . . , uk from F2n with #{u1, u2, . . . , uK} = K; select v1, v2, . . . , vk from F∗

2n;

define G as G(x) = F(x) +

K

  • i=1

(1 + (x + u1)2n−1)vi =

  • F(x)

x / ∈ U F(ui) + vi x = ui, i ∈ {1, 2, . . . , K}.

What can be said about the properties of F and G?

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 6 / 17

slide-25
SLIDE 25

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-26
SLIDE 26

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k; assume K

i=1 vi = 0, otherwise reduces to deg(G) = n;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-27
SLIDE 27

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k; assume K

i=1 vi = 0, otherwise reduces to deg(G) = n;

G has a term cx2n−2 unless F has a term c′x2n−2 with c′ = K

i=0 viui;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-28
SLIDE 28

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k; assume K

i=1 vi = 0, otherwise reduces to deg(G) = n;

G has a term cx2n−2 unless F has a term c′x2n−2 with c′ = K

i=0 viui;

hence min{deg(F), deg(G)} ≥ n − 1;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-29
SLIDE 29

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k; assume K

i=1 vi = 0, otherwise reduces to deg(G) = n;

G has a term cx2n−2 unless F has a term c′x2n−2 with c′ = K

i=0 viui;

hence min{deg(F), deg(G)} ≥ n − 1; bounds on algebraic degree now imply non-existence results:

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-30
SLIDE 30

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k; assume K

i=1 vi = 0, otherwise reduces to deg(G) = n;

G has a term cx2n−2 unless F has a term c′x2n−2 with c′ = K

i=0 viui;

hence min{deg(F), deg(G)} ≥ n − 1; bounds on algebraic degree now imply non-existence results:

if F is Almost Bent (AB), then G is not AB for n > 3;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-31
SLIDE 31

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k; assume K

i=1 vi = 0, otherwise reduces to deg(G) = n;

G has a term cx2n−2 unless F has a term c′x2n−2 with c′ = K

i=0 viui;

hence min{deg(F), deg(G)} ≥ n − 1; bounds on algebraic degree now imply non-existence results:

if F is Almost Bent (AB), then G is not AB for n > 3; if F is plateaued, then G is not plateaued for n > 4;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-32
SLIDE 32

Introduction General Observations

General Observations (Algebraic Degree)

F(x) + G(x) has coefficient K

i=1 viuk−1 i

in front of x2n−k; assume K

i=1 vi = 0, otherwise reduces to deg(G) = n;

G has a term cx2n−2 unless F has a term c′x2n−2 with c′ = K

i=0 viui;

hence min{deg(F), deg(G)} ≥ n − 1; bounds on algebraic degree now imply non-existence results:

if F is Almost Bent (AB), then G is not AB for n > 3; if F is plateaued, then G is not plateaued for n > 4; same if deg(F) < n − 1.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 7 / 17

slide-33
SLIDE 33

Introduction Walsh Transform

General Observations (Walsh Transform)

by mechanical computations: WG(a, b) = WF(a, b) +

K

  • i=1

(−1)Tr(bF(ui)+aui) (−1)Tr(bvi) − 1

  • ;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 8 / 17

slide-34
SLIDE 34

Introduction Walsh Transform

General Observations (Walsh Transform)

by mechanical computations: WG(a, b) = WF(a, b) +

K

  • i=1

(−1)Tr(bF(ui)+aui) (−1)Tr(bvi) − 1

  • ;

hence −2K ≤ WG(a, b) − WF(a, b) ≤ 2K;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 8 / 17

slide-35
SLIDE 35

Introduction Walsh Transform

General Observations (Walsh Transform)

by mechanical computations: WG(a, b) = WF(a, b) +

K

  • i=1

(−1)Tr(bF(ui)+aui) (−1)Tr(bvi) − 1

  • ;

hence −2K ≤ WG(a, b) − WF(a, b) ≤ 2K; hence −K ≤ NL(G) − NL(F) ≤ K.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 8 / 17

slide-36
SLIDE 36

Analysis Derivative Analysis

Derivative Analysis

let 1a,b(x) = 1 if x ∈ {a, b} and 1a,b(x) = 0 otherwise;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 9 / 17

slide-37
SLIDE 37

Analysis Derivative Analysis

Derivative Analysis

let 1a,b(x) = 1 if x ∈ {a, b} and 1a,b(x) = 0 otherwise; DaG and DaF differ on the points in U ∪ (a + U): DaG(x) = DaF(x) +

K

  • i=1

1ui,a+ui(x)vi;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 9 / 17

slide-38
SLIDE 38

Analysis Derivative Analysis

Derivative Analysis

let 1a,b(x) = 1 if x ∈ {a, b} and 1a,b(x) = 0 otherwise; DaG and DaF differ on the points in U ∪ (a + U): DaG(x) = DaF(x) +

K

  • i=1

1ui,a+ui(x)vi; for a ∈ F∗

2n, let aU = {ui ∈ U : ui + a ∈ U} and denote by i the index

j for which ui + a = uj;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 9 / 17

slide-39
SLIDE 39

Analysis Derivative Analysis

Derivative Analysis

let 1a,b(x) = 1 if x ∈ {a, b} and 1a,b(x) = 0 otherwise; DaG and DaF differ on the points in U ∪ (a + U): DaG(x) = DaF(x) +

K

  • i=1

1ui,a+ui(x)vi; for a ∈ F∗

2n, let aU = {ui ∈ U : ui + a ∈ U} and denote by i the index

j for which ui + a = uj; G is not APN if and only if DaF(x) = DaF(y) for some a, x, y ∈ F2n with a = 0, x = y, x = a + y;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 9 / 17

slide-40
SLIDE 40

Analysis Derivative Analysis

Derivative Analysis

let 1a,b(x) = 1 if x ∈ {a, b} and 1a,b(x) = 0 otherwise; DaG and DaF differ on the points in U ∪ (a + U): DaG(x) = DaF(x) +

K

  • i=1

1ui,a+ui(x)vi; for a ∈ F∗

2n, let aU = {ui ∈ U : ui + a ∈ U} and denote by i the index

j for which ui + a = uj; G is not APN if and only if DaF(x) = DaF(y) for some a, x, y ∈ F2n with a = 0, x = y, x = a + y; several cases need to be treated depending on whether x and y are in U and aU;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 9 / 17

slide-41
SLIDE 41

Analysis Derivative Analysis

Derivative Analysis

let 1a,b(x) = 1 if x ∈ {a, b} and 1a,b(x) = 0 otherwise; DaG and DaF differ on the points in U ∪ (a + U): DaG(x) = DaF(x) +

K

  • i=1

1ui,a+ui(x)vi; for a ∈ F∗

2n, let aU = {ui ∈ U : ui + a ∈ U} and denote by i the index

j for which ui + a = uj; G is not APN if and only if DaF(x) = DaF(y) for some a, x, y ∈ F2n with a = 0, x = y, x = a + y; several cases need to be treated depending on whether x and y are in U and aU; finally, we obtain the following characterization:

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 9 / 17

slide-42
SLIDE 42

Analysis Derivative Analysis

Derivative Analysis (2)

Theorem G is APN if and only if every a ∈ F∗

2n satisfies:

DaF is 2-to-1 on F2n \ (U ∪ a + U); DaF(ui) + DaF(uj) = vi + vj + vpa(i) + vpa(j) for i, j ∈ All(pa) unless ui = uj or ui + uj = a; DaF(ui) + DaF(uj) = vi + vj + vpa(i) for i ∈ All(pa), j / ∈ All(pa); DaF(ui) + DaF(uj) = vi + vj for i, j / ∈ All(pa) unless ui = uj; DaF(ui) + DaF(x) = vi + vpa(i) for i ∈ All(pa), x / ∈ (U ∪ a + U); DaF(ui) + DaF(x) = vi for i / ∈ All(pa), x / ∈ (U ∪ a + U).

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 10 / 17

slide-43
SLIDE 43

Analysis Filtering Procedure

Applications of the Theorem

if u1, u2, . . . , uK are known, the theorem can be used to filter the domains of v1, v2, . . . , vK;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 11 / 17

slide-44
SLIDE 44

Analysis Filtering Procedure

Applications of the Theorem

if u1, u2, . . . , uK are known, the theorem can be used to filter the domains of v1, v2, . . . , vK; for F(x) = x3 over F25 and U = {αi : i ∈ {0, 1, . . . , 5}}, where α is primitive in F25, no choice for v1, . . . , v6 produces an APN function;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 11 / 17

slide-45
SLIDE 45

Analysis Filtering Procedure

Applications of the Theorem

if u1, u2, . . . , uK are known, the theorem can be used to filter the domains of v1, v2, . . . , vK; for F(x) = x3 over F25 and U = {αi : i ∈ {0, 1, . . . , 5}}, where α is primitive in F25, no choice for v1, . . . , v6 produces an APN function; checking all possibilities by hand requires about 75 hours; filtering according to the theorem requires less than a second;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 11 / 17

slide-46
SLIDE 46

Analysis Filtering Procedure

Applications of the Theorem

if u1, u2, . . . , uK are known, the theorem can be used to filter the domains of v1, v2, . . . , vK; for F(x) = x3 over F25 and U = {αi : i ∈ {0, 1, . . . , 5}}, where α is primitive in F25, no choice for v1, . . . , v6 produces an APN function; checking all possibilities by hand requires about 75 hours; filtering according to the theorem requires less than a second; various iterative filtering procedures can be applied if some ui and vi are known;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 11 / 17

slide-47
SLIDE 47

Analysis Filtering Procedure

Applications of the Theorem

if u1, u2, . . . , uK are known, the theorem can be used to filter the domains of v1, v2, . . . , vK; for F(x) = x3 over F25 and U = {αi : i ∈ {0, 1, . . . , 5}}, where α is primitive in F25, no choice for v1, . . . , v6 produces an APN function; checking all possibilities by hand requires about 75 hours; filtering according to the theorem requires less than a second; various iterative filtering procedures can be applied if some ui and vi are known; even if nothing is known, a lower bound on the distance to the “closest” APN function can be computed from point (vi) of the theorem.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 11 / 17

slide-48
SLIDE 48

Analysis Distance Between APN Functions

Lower Bound on Distance to Closest APN Function

by condition (vi), any derivative DaF having DaF(ui) + vi in its image must satisfy either a + ui ∈ U or DaF(uj) = DaF(ui) + vi for j = i;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 12 / 17

slide-49
SLIDE 49

Analysis Distance Between APN Functions

Lower Bound on Distance to Closest APN Function

by condition (vi), any derivative DaF having DaF(ui) + vi in its image must satisfy either a + ui ∈ U or DaF(uj) = DaF(ui) + vi for j = i; let mβ

F(b) = #{a ∈ F2n : (∃x ∈ F2n)(DaF(x) = b + F(a + β))};

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 12 / 17

slide-50
SLIDE 50

Analysis Distance Between APN Functions

Lower Bound on Distance to Closest APN Function

by condition (vi), any derivative DaF having DaF(ui) + vi in its image must satisfy either a + ui ∈ U or DaF(uj) = DaF(ui) + vi for j = i; let mβ

F(b) = #{a ∈ F2n : (∃x ∈ F2n)(DaF(x) = b + F(a + β))};

to count the number of a ∈ F∗

2n for which DaF maps to DaF(ui) + vi

for arbitrary values of ui and vi we need to find the maximum value of mβ

F(b) through all b, β ∈ F2n;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 12 / 17

slide-51
SLIDE 51

Analysis Distance Between APN Functions

Lower Bound on Distance to Closest APN Function

by condition (vi), any derivative DaF having DaF(ui) + vi in its image must satisfy either a + ui ∈ U or DaF(uj) = DaF(ui) + vi for j = i; let mβ

F(b) = #{a ∈ F2n : (∃x ∈ F2n)(DaF(x) = b + F(a + β))};

to count the number of a ∈ F∗

2n for which DaF maps to DaF(ui) + vi

for arbitrary values of ui and vi we need to find the maximum value of mβ

F(b) through all b, β ∈ F2n;

as an “intermediate step” we let mβ

F = max{mβ F(b) : b ∈ F2n};

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 12 / 17

slide-52
SLIDE 52

Analysis Distance Between APN Functions

Lower Bound on Distance to Closest APN Function

by condition (vi), any derivative DaF having DaF(ui) + vi in its image must satisfy either a + ui ∈ U or DaF(uj) = DaF(ui) + vi for j = i; let mβ

F(b) = #{a ∈ F2n : (∃x ∈ F2n)(DaF(x) = b + F(a + β))};

to count the number of a ∈ F∗

2n for which DaF maps to DaF(ui) + vi

for arbitrary values of ui and vi we need to find the maximum value of mβ

F(b) through all b, β ∈ F2n;

as an “intermediate step” we let mβ

F = max{mβ F(b) : b ∈ F2n};

finally, denote mF = max{mβ

F(b) : b, β ∈ F2n} = max{mβ F : β ∈ F2n};

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 12 / 17

slide-53
SLIDE 53

Analysis Distance Between APN Functions

Lower Bound on Distance to Closest APN Function

by condition (vi), any derivative DaF having DaF(ui) + vi in its image must satisfy either a + ui ∈ U or DaF(uj) = DaF(ui) + vi for j = i; let mβ

F(b) = #{a ∈ F2n : (∃x ∈ F2n)(DaF(x) = b + F(a + β))};

to count the number of a ∈ F∗

2n for which DaF maps to DaF(ui) + vi

for arbitrary values of ui and vi we need to find the maximum value of mβ

F(b) through all b, β ∈ F2n;

as an “intermediate step” we let mβ

F = max{mβ F(b) : b ∈ F2n};

finally, denote mF = max{mβ

F(b) : b, β ∈ F2n} = max{mβ F : β ∈ F2n};

then for any APN function G we have d(F, G) ≥

mF

3

  • + 1.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 12 / 17

slide-54
SLIDE 54

Analysis Distance Between APN Functions

Invariance Properties

Proposition Let F and F ′ be CCZ-equivalent functions via L = (L1, L2). Then mβ

F(b) = mL1(β,b) F

(L2(β, b)). Hence, mF is invariant under CCZ-equivalence. Proposition Let F be a quadratic function over F2n. Then mβ

F = mβ′ F holds for any

β, β′ ∈ F2n. Hence only e.g. m0

F has to be computed for quadratic functions.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 13 / 17

slide-55
SLIDE 55

Analysis Distance Between APN Functions

Values of mF for all Switching Class Representatives

Dimension F mF Distance Dimension F mF Distance 4 x3 3 2 8 1.3 111 38 5 x3 15 6 8 1.4 111 38 5 x5 15 6 8 1.5 111 38 5 x15 9 4 8 1.6 111 38 6 1.1 27 10 8 1.7 111 38 6 1.2 27 10 8 1.8 111 38 6 2.1 15 6 8 1.9 111 38 6 2.2 27 10 8 1.10 111 38 6 2.3 27 10 8 1.11 111 38 6 2.4 15 6 8 1.12 111 38 6 2.5 15 6 8 1.13 111 38 6 2.6 15 6 8 1.14 99 34 6 2.7 15 6 8 1.15 111 38 6 2.8 15 6 8 1.16 111 38 6 2.9 21 8 8 1.17 111 38 6 2.10 21 8 8 2.1 111 38 6 2.11 15 6 8 3.1 111 38 6 2.12 15 6 8 4.1 99 34 7 all 63 22 8 5.1 105 36 8 1.1 111 38 8 6.1 105 36 8 1.2 111 38 8 7.1 111 38

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 14 / 17

slide-56
SLIDE 56

Analysis Constant Shift

The Case of Constant Shift

if v1 = v2 = · · · = vK = v = 0, the APN-ness of G can be characterized by solving a system of linear equations;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 15 / 17

slide-57
SLIDE 57

Analysis Constant Shift

The Case of Constant Shift

if v1 = v2 = · · · = vK = v = 0, the APN-ness of G can be characterized by solving a system of linear equations; for (a, x, y) ∈ F3

2n, count the number Na,x,y of elements from the set

{x, y, a + x, a + y} that are in U;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 15 / 17

slide-58
SLIDE 58

Analysis Constant Shift

The Case of Constant Shift

if v1 = v2 = · · · = vK = v = 0, the APN-ness of G can be characterized by solving a system of linear equations; for (a, x, y) ∈ F3

2n, count the number Na,x,y of elements from the set

{x, y, a + x, a + y} that are in U; DaG(x) = b can have more than two solutions if and only if DaF(x) + DaF(y) = vNa,x,y for some x, y ∈ F2n with x + y = a;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 15 / 17

slide-59
SLIDE 59

Analysis Constant Shift

The Case of Constant Shift

if v1 = v2 = · · · = vK = v = 0, the APN-ness of G can be characterized by solving a system of linear equations; for (a, x, y) ∈ F3

2n, count the number Na,x,y of elements from the set

{x, y, a + x, a + y} that are in U; DaG(x) = b can have more than two solutions if and only if DaF(x) + DaF(y) = vNa,x,y for some x, y ∈ F2n with x + y = a; a system of linear equations with the unknowns ua can be constructed that prevents this from happening;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 15 / 17

slide-60
SLIDE 60

Analysis Constant Shift

The Case of Constant Shift

if v1 = v2 = · · · = vK = v = 0, the APN-ness of G can be characterized by solving a system of linear equations; for (a, x, y) ∈ F3

2n, count the number Na,x,y of elements from the set

{x, y, a + x, a + y} that are in U; DaG(x) = b can have more than two solutions if and only if DaF(x) + DaF(y) = vNa,x,y for some x, y ∈ F2n with x + y = a; a system of linear equations with the unknowns ua can be constructed that prevents this from happening; here any a ∈ F2n, let ua be an indicator variable such that ua = 1 ⇐ ⇒ a ∈ U.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 15 / 17

slide-61
SLIDE 61

Analysis Constant Shift

The Case of Constant Shift

find all (x, y, a) such that DaF(x) + DaF(y) = v;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 16 / 17

slide-62
SLIDE 62

Analysis Constant Shift

The Case of Constant Shift

find all (x, y, a) such that DaF(x) + DaF(y) = v; consider the equation ux + uy + ua+x + ua+y = 0;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 16 / 17

slide-63
SLIDE 63

Analysis Constant Shift

The Case of Constant Shift

find all (x, y, a) such that DaF(x) + DaF(y) = v; consider the equation ux + uy + ua+x + ua+y = 0; find also all (x, y, a) such that DaF(x) + DaF(y) = 0;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 16 / 17

slide-64
SLIDE 64

Analysis Constant Shift

The Case of Constant Shift

find all (x, y, a) such that DaF(x) + DaF(y) = v; consider the equation ux + uy + ua+x + ua+y = 0; find also all (x, y, a) such that DaF(x) + DaF(y) = 0; consider the equation ux + uy + ua+x + ua+y = 1;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 16 / 17

slide-65
SLIDE 65

Analysis Constant Shift

The Case of Constant Shift

find all (x, y, a) such that DaF(x) + DaF(y) = v; consider the equation ux + uy + ua+x + ua+y = 0; find also all (x, y, a) such that DaF(x) + DaF(y) = 0; consider the equation ux + uy + ua+x + ua+y = 1; solve this system of equations, e.g. by constructing an e × (2n) matrix over F2, where e is the number of tuples that we consider;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 16 / 17

slide-66
SLIDE 66

Analysis Constant Shift

The Case of Constant Shift

find all (x, y, a) such that DaF(x) + DaF(y) = v; consider the equation ux + uy + ua+x + ua+y = 0; find also all (x, y, a) such that DaF(x) + DaF(y) = 0; consider the equation ux + uy + ua+x + ua+y = 1; solve this system of equations, e.g. by constructing an e × (2n) matrix over F2, where e is the number of tuples that we consider; the solutions give precisely those sets U ⊆ F2n for which G is APN.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 16 / 17

slide-67
SLIDE 67

Conclusion

Directions of Research

improve the lower bound on the distance between APN functions or show that it is tight;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 17 / 17

slide-68
SLIDE 68

Conclusion

Directions of Research

improve the lower bound on the distance between APN functions or show that it is tight; investigate the structure of sets u1, u2, . . . , uK for which G can be APN;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 17 / 17

slide-69
SLIDE 69

Conclusion

Directions of Research

improve the lower bound on the distance between APN functions or show that it is tight; investigate the structure of sets u1, u2, . . . , uK for which G can be APN; investigate similar relations between functions other than APN, e.g. AB, plateaued, differentially 4-uniform;

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 17 / 17

slide-70
SLIDE 70

Conclusion

Directions of Research

improve the lower bound on the distance between APN functions or show that it is tight; investigate the structure of sets u1, u2, . . . , uK for which G can be APN; investigate similar relations between functions other than APN, e.g. AB, plateaued, differentially 4-uniform; derive efficient search procedures for constructing one APN function from another.

Nikolay S. Kaleyski (University of Bergen) Changing Points in APN Functions June 18, 2018 17 / 17