Boolean functions for cryptography and error-correcting codes.

*(English)*Zbl 1209.94035
Crama, Yves (ed.) et al., Boolean models and methods in mathematics, computer science, and engineering. Cambridge: Cambridge University Press (ISBN 978-0-521-84752-0/hbk). Encyclopedia of Mathematics and its Applications 134, 257-397 (2010).

From the introduction: In both cryptographic and error correcting coding activities, Boolean functions (that is, functions from the vector space \(\mathbb F_2^n\) of all binary vectors of length \(n\), to the finite field with two elements \(\mathbb F_2\)) play roles:

The study of Boolean functions for constructing or studying codes or ciphers is essentially mathematical. But clever computer investigation is very useful to imagine or to test conjectures, and sometimes to generate interesting functions.

For the entire collection see [Zbl 1196.06001].

- \(\bullet\)
- Every code of length \(2^n\), for some positive integer \(n\), can be interpreted as a set of Boolean functions, because every \(n\)-variable Boolean function can be represented by its truth table (an ordering of the set of binary vectors of length \(n\) being first chosen) and thus associated with a binary word of length \(2^n\), and vice verse. Important codes (Reed-Muller, Kerdock codes) can be defined this way as sets of Boolean functions.
- \(\bullet\)
- The role of Boolean functions in conventional cryptography is even more important: cryptographic transformations (pseudorandom generators in stream ciphers, S-boxes in block ciphers) can be designed by appropriate composition of nonlinear Boolean functions.

The study of Boolean functions for constructing or studying codes or ciphers is essentially mathematical. But clever computer investigation is very useful to imagine or to test conjectures, and sometimes to generate interesting functions.

For the entire collection see [Zbl 1196.06001].

##### MSC:

94A60 | Cryptography |