Ch4 AES Algorithm
ES (Advanced Encryption Standard) is:
A symmetric-key cipher (same key for encryption & decryption)
A block cipher
Encrypts 128-bit blocks
Key sizes:
128 bits → 10 rounds
192 bits → 12 rounds
256 bits → 14 rounds
AES is NOT Feistel (unlike DES).
All 128 bits are processed in parallel.
Plaintex
t 128
128/192/25
AES 6 K
128
Ciphertex
t
AES works on bytes (8 bits) and uses GF(2⁸) arithmetic.
🔹 Block → State
Plaintext block = 128 bits = 16 bytes
Arranged into a 4 × 4 matrix called the State
Filled column by column
Structure of AES Encryption
Initial Step:
🔹 Add Round Key (XOR with key)
Then for each round:
1. Sub Bytes
2. Shift Rows
3. Mix Columns
4. Add Round Key
Last round:
❌ No Mix Columns
Sub bytes: (Confusion, Byte Substitution)
Using S-box, CHECK SLIDES
Diffusion Layer:
1. Shift Rows sub-layer
a. Rows of the state matrix are shifted cyclically
b. Shifting, which permutes the bytes.
c. A circular byte shifts in each
i. 1st row is unchanged
ii. 2nd row does 1-byte circular shift to left
iii. 3rd row does 2-byte circular shift to left
iv. 4th row does 3-byte circular shift to left
d. In the encryption, the transformation is called Shift Rows
e. In the decryption, the transformation is called Inv Shift Rows and the shifting is to the
right
2. Mix Column sub-layer
a. Take each row, and make it into one value. (each byte into one value)
b. Do this by taking the first column and multiplying the first value by the constant
multiplication matrix, assume column is a, b, c, d and row in multiplication matrix is 01,
02, 03, 01:
A x 01 XOR Bx02 XOR Cx03 XOR D01 = New value of S0,0 in matrix
c. do this for the rest of the column and multiplication matrix. Then do the same for rest of
columns.
3. Add Round Key:
a. XOR matrix with key
Key Expansion:
Rot word: left shift
Sub Word: s-box
Rcon: given in Question or is just 01 00 00 00
For any thing to calculate first word in each round:
1. Take w3 and left shift it by 8 bytes:
Ex. af 7f 67 98 7f 67 98 af
2. Now take result from 1 and put it into s-box
3. Perform this equation:
Wi-4 XOR Result from 2 XOR Rcon
For any thing other than first word:
1. Take the word before it and XOR it with before it by 4. Ex. w6=w5 XOR w2