The Advanced Encryption Standard Part 1: Overview CSCI 5857: Encoding and Encryption
Outline AES goals and history AES data structures Overall AES round structure
AES History 1997: NIST calls for proposals for DES replacement 56-bit DES key not computationally secure Triple DES very slow DES S-Boxes poorly understood 1999: Several algorithms chosen as finalists Rijndael (selected) Twofish, Serpent, etc. (still used by some systems) 2001: Rijndael published by NIST as Advanced Encryption Standard
Goals of AES Security Cost Minimum key size: 128 bits (computationally secure now) Expandable to 192 or 256 bits (will still be computationally secure in future) Block size: 128 bits (more possible mappings) Designed for resistance to differential and linear cryptanalysis Cost Structure optimized for efficiency
AES Bytes and Words Blocks represented as arrays of smaller groups of bits Byte: 8 bits Word: 32 bits (4 bytes in word)
AES States Each word (each 4 bytes) corresponds to column in state Used to add confustion
Hexadecimal AES States Example: 17 17 Note that a byte can be represented by a 2-digit hexadecimal (base 16) number
AES Structure
AES Round Structure SubBytes: Each byte transformed by an S-Box ShiftRows: Permutation to swap bytes around MixColumns: Matrix multiplication to permute bits within bytes AddRoundKey: XOR result with current round key Notes: Extra AddRoundKey before first round No MixColumns in last round
What’s Next Let me know if you have any questions Continue on to the next lecture on AES: Mathematical Backgorund