# Generating S-Boxes For Block Ciphers
## Abstract
In this paper, we will explore methods for generating cryptographically strong s-boxes, using almost perfect nonlinear functions. We will also look at methods for determining the quality of any given s-box. In addition to looking at the theory, we implement the algorithms we find, using the python 3 programming language.

## The full paper
[Generating S-Boxes.pdf](http://tommythorsen.github.io/documents/generating-s-boxes/Generating%20S-Boxes.pdf)

## The accompanying python code
The python code for generating and testing s-boxes, can be found in the [scripts](scripts/) folder.
