Substitution-permutation network

In cryptography, an SP-network, or substitution-permutation network (SPN), is a series of linked mathematical operations used in block cipher algorithms such as AES.

These networks consist of S-boxes and P-boxes that transform blocks of input bits into output bits.  

S-boxes substitute or transform input bits into output bits.  A good S-box will have the property that changing one input bit will change about half of the output bits.  It will also have the property that each output bit will depend on every input bit. P-boxes permute or rearrange bits across S-box inputs. In addition, at each round the key is combined using some group operation, typically XOR.

Related pages
 Feistel cipher
 Product cipher
 Square (cipher)
 International Data Encryption Algorithm

References
 Jonathan Katz and Yehuda Lindell, "Introduction to Modern Cryptography". CRC Press, 2007.

Category:Cryptography