Lecture 5 Advanced Encryption Standard
Lecture 5 Advanced Encryption Standard
Introduction
Lecture 5: Advanced • In 1999 the US National Institute of Standards and Technology (NIST) indicated
that DES should only be used for legacy systems and instead triple DES (3DES)
should be used.
Encryption Standard • Even though 3DES resists brute-force attacks with today’s technology, there are
several problems with it.
• First, it is not very efficient with regard to software implementations. DES is
already not particularly well suited for software and 3DES is three times slower
than DES.
• Secondly, if one is worried about attacks with quantum computers, which might
become reality in a few decades, key lengths on the order of 256 bits are
desirable.
• All these consideration led NIST to the conclusion that an entirely new block
cipher was needed as a replacement for DES.
Key Schedule for 128-Bit Key AES Key Schedule for 128-Bit Key AES
• The first subkey k0 is the original AES key, i.e., the key is
copied into the first four elements of the key array W .
• The leftmost word of a subkey W[4i], where i = 1,...,10,
is computed as:
Decryption Decryption
• Since the last encryption round
• Because AES is not based on a Feistel network, all layers must actually be does not perform the MixColum
inverted, i.e., the Byte Substitution layer becomes the Inv Byte Substitution layer, operation, the first decryption
the ShiftRows layer becomes the Inv ShiftRows layer, and the MixColumn layer round also does not contain the
corresponding inverse layer.
becomes Inv MixColumn layer. • All other decryption rounds,
• Inverse layer operations are fairly similar to the layer operations used for however, contain all AES layers.
• Since the XOR operation is its
encryption. own inverse, the key addition
• In addition, the order of the subkeys is reversed, i.e., we need a reversed key layer in the decryption mode is
schedule. the same as in the encryption
mode: it consists of a row of
plain XOR gates
• After the addition of the subkey, the inverse MixColumn step is applied to the state (again,
the exception is the first decryption round).
• In order to reverse the MixColumn operation, the inverse of its matrix must be used.
• The input is a 4-byte column of the State C which is multiplied by the inverse 4×4 matrix.
• The matrix contains constant entries.
• Multiplication and addition of the coefficients is done in GF(28).