14.3 The AES block cipher
In stark contrast to the DES algorithm, whose design criteria were never fully published, the AES was conceived in a very transparent process. After a formal, worldwide Call for Algorithms published in 1997 by the NIST, the National Institute of Standards and Technology in the United States, 15 candidate algorithm specifications were submitted, along with reference implementations in C and Java. The goal was to find a block cipher that was as secure as Triple-DES, but much more efficient. More specifically, the AES should have a block length of 128 bits and should be able to support variable key lengths of 128, 192, and 256 bits. Further selection criteria, apart from security, were as follows:
Versatility: The selected algorithm should perform uniformly well on all hardware platforms, ranging from chip cards over PCs to Application-Specific Integrated Circuits(ASICs) and Field Programmable Gate Arrays (FPGAs).
Key agility: It should be possible to switch to...