Chapter Three PartOne
Chapter Three PartOne
Origins
A replacement for DES was needed
Key size is too small
final criteria
general security
ease of software & hardware implementation
implementation attacks
flexibility (in en/decrypt, keying, other factors)
AES Shortlist
After testing and evaluation, shortlist in Aug-99
MARS (IBM) - complex, fast, high security margin
RC6 (USA) - v. simple, v. fast, low security margin
Rijndael (Belgium) - clean, fast, good security margin
Serpent (Euro) - slow, clean, v. high security margin
Twofish (USA) - complex, v. fast, high security margin
Rijndael design:
simplicity
has 128/192/256 bit keys, 128 bits data
resistant against known attacks
J. Daemen
speed and code compactness on many CPUs
AES Conceptual Scheme
7
Multiple rounds
Rounds are (almost) identical
First and last round are a little different
8
High Level Description
No MixColumns
Overall Structure
128-bit values
1 byte
11
Data Unit
Unit Transformation
Changing Plaintext to State
Details of Each Round
SubBytes: Byte Substitution
A simple substitution of each byte
provide a confusion
Uses one S-box of 16x16 bytes containing a permutation of all 256 8-bit
values
Each byte of state is replaced by byte indexed by row (left 4-bits) & column
(right 4-bits)
eg. byte {95} is replaced by byte in row 9 column 5
which has value {2A}
x’y’16
SubBytes Table
Implement by Table Lookup
InvSubBytes Table
Sample SubByte Transformation
27
MixColumn and InvMixColumn
AddRoundKey
XOR state with 128-bits of the round key
RotWord[b0,b1,b2,b3] = [b1,b2,b3,b0]
Very efficient
AES animation:
http://www.cs.bc.edu/~straubin/cs381-05/blockciphers/rijndael_ingles2004.swf