10.07.2015 Views

here - Sites personnels de TELECOM ParisTech - Télécom ParisTech

here - Sites personnels de TELECOM ParisTech - Télécom ParisTech

here - Sites personnels de TELECOM ParisTech - Télécom ParisTech

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

96 Chapter 3. Bent functions and algebraic curvesIn Chapter 1 we emphasized the fact that a cryptographic Boolean function should verify severalcontradictory properties. Constructing satisfying functions is t<strong>here</strong>fore a difficult task, andtra<strong>de</strong>-offs between the different criteria have to be ma<strong>de</strong>. In the present part, our approach willbe slightly different: we solely focus on one criterion — non-linearity — and more precisely onfunctions achieving maximum non-linearity: bent functions. Recall that the significance of thisaspect has again been <strong>de</strong>monstrated by the recent <strong>de</strong>velopment of linear cryptanalysis initiatedby Matsui [189, 188]. It is t<strong>here</strong>fore especially important when Boolean functions are used aspart of S-boxes in symmetric cryptosystems.Bent functions were introduced by Rothaus [222] in 1976. They turned out to be rathercomplicated combinatorial objects and a concrete <strong>de</strong>scription of all bent functions is elusive. Theclass of bent functions contains a subclass of functions introduced by Youssef and Gong [285]in 2001: the so-called hyper-bent functions. In fact, the first <strong>de</strong>finition of hyper-bent functionswas based on a property of the exten<strong>de</strong>d Walsh–Hadamard transform of Boolean functionsintroduced by Golomb and Gong [118]. Golomb and Gong proposed that S-boxes should notbe approximated by a bijective monomial, providing a new criterion for S-box <strong>de</strong>sign. Theclassification of (hyper-)bent functions and many related problems remain open. In particular, itseems difficult to <strong>de</strong>fine precisely an infinite class of hyper-bent functions, as indicated by thenumber of open problems proposed by Charpin and Gong [46].The purpose of this chapter is to provi<strong>de</strong> the mathematical background nee<strong>de</strong>d in Chapter 4w<strong>here</strong> actual characterizations of such functions and efficient algorithms to generate them will bepresented. In Section 3.1, an alternative representation of Boolean functions is introduced, namelythe polynomial form, as well as exponential sums and polynomials classically related to it. It isin<strong>de</strong>ed un<strong>de</strong>r that form that (hyper-)bent functions will be characterized in Chapter 4. Section 3.2covers a completely different and at first sight unrelated topic: (hyper)elliptic curves with anemphasis on point counting and efficient algorithms addressing this problem. The main pointthat we need in Chapter 4 is that it is possible to count points on such curves in a very efficientmanner. This introduction can also serve the rea<strong>de</strong>r who is not acquainted with the theory ofalgebraic curves and abelian varieties as an introduction to Part III. T<strong>here</strong>fore, Section 3.2 canalso be seen as the beginning of the transition towards Part III which will <strong>de</strong>finitely <strong>de</strong>part fromthe study of Boolean functions and dive into that of abelian varieties with complex multiplication.3.1 Bent functions3.1.1 Boolean functions in polynomial formLet n be a positive integer. Recall that a Boolean function f in n variables is an F 2 -valuedfunction on F n 2 . The field F 2 n is (non-canonically) isomorphic to the vector space F n 2 , so that aBoolean function can also be seen as a function f : F 2 n → F 2 . Recall also that the Hammingweight of f, <strong>de</strong>noted by w H (f), is the Hamming weight of the image vector of f, that is thecardinality of its support supp(f) = {x ∈ F 2 n | f(x) = 1}.We now <strong>de</strong>fine another classical representation of Boolean functions involving the trace functionfrom F 2 k to F 2 r.Definition 3.1.1 (Field trace). For any positive integer k, and r dividing k, the trace function

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!