Design Philosophy

Abstract

In this chapter we motivate the choices we have made in the process of designing Rijndael and its predecessors. We start with discussing the criteria that are widely considered important for block ciphers such as security and efficiency. After that, we introduce the criterion of simplicity that plays such an important role in our design approach. We explain what we mean by it and why it is so important. A very effective way to keep things simple is by the introduction of symmetry. After discussing different ways of introducing symmetry, we motivate the choice of operations in Rijndael and its predecessors and our approach to security. This is followed by a discussion of what we think it takes to design a block cipher that satisfies our criteria. We conclude this chapter with a discussion on the generation and usage of round keys.