Block ciphers and the data encryption st andard 197
literature in the design a nd analysis of S-boxes. In general, an S-box tha t
takes an n-bit input and produces an s-bit output is called a n n × s S-box.
The following have been published by Coppersmith [21], who was o ne of
the o riginal designer s of DE S, as the design criteria for S-boxes:
1. Each S-box must take a 6-bit input and return a 4-bit output. (This
was the maximum size availa ble for 1974 hardware.)
2. No S-box operation on a bit is a linear or affine function.
3. If the outer two bits are fixed, then as the inner four bits vary over all
their 16 possibilities, every possible output will be re turned.
4. A change to a single bit of input results in at least two bit changes in
the o utput. ...