Cryptography Reference
In-Depth Information
block length is only 128 bits. Each block of plain text is encrypted several times
with a repeating sequence of various functions, in so-called rounds . The number
of rounds is dependent on the block and key lengths (see Table 11-4).
Rijndael is not a Feistel algorithm, whose essential characteristic is that
blocks are divided into left and right halves, the round transformations applied
to one half, and the result XOR-ed with the other half, after which the two halves
are exchanged. DES is the best-known block algorithm built along these lines.
Rijndael, on the other hand, is built up of separate layers, which successively
apply various effects to an entire block. For the encryption of a block the following
transformations are sequentially applied:
1. The first round key is XOR-ed with the block.
2. L r
1 regular rounds are executed.
3. A terminal round is executed, in which the MixColumns transformation of the
regular rounds is omitted.
Table 11-4. Number of Rijndael rounds as a function of block and key length
Block Length (Bits)
Key Length (Bits)
128
192
256
128
10
12
14
192
12
12
14
256
14
14
14
Each regular round of step 2 consists of four individual steps, which we shall
now examine:
1. Substitution: Each byte of a block is replaced by application of an S-box.
2. Permutation: The bytes of the block are permuted in a ShiftRows
transformation.
3. Diffusion: The MixColumns transformation is executed.
4. Round key addition: The current round key is XOR-ed with the block.
The layering of transformations within a round is shown schematically in
Figure 11-1.
Each layer exercises a particular effect within a round and thus on each block
of plain text:
 
Search WWH ::




Custom Search