AES takes an input of 128 bits, grouped into 16 bytes of 8 bits. Enter your 128 bits below in hexadecimal format.
Plaintext (in hex):
Encryption key (in hex):
These 16 bytes are then arranged into a 4 x 4 matrix. From this matrix we will do the 10 rounds of the AES algorithm (if the key has 192 bits, it's 12 rounds, and when the key has 256 bits, it's 14 rounds). Each round has 4 steps, Byte Substitution, Row Shifting, Column Mixing, then adding the Key for that round.
Round 1 The SubByte transformation is the first step of each round. Each byte in our matrix is substituted with another value. The other value comes from what we call the S-Box.
Initial |
|
|
|
Round 1 |
|
|
|
|
|
|
|
Round 2 |
|
|
|
|
|
|
|
Round 3 |
|
|
|
|
|
|
|
Round 4 |
|
|
|
|
|
|
|
Round 5 |
|
|
|
|
|
|
|
Round 6 |
|
|
|
|
|
|
|
Round 7 |
|
|
|
|
|
|
|
Round 8 |
|
|
|
|
|
|
|
Round 9 |
|
|
|
|
|
|
|
Round 10 |
|
|
|
The MixColumn step is left out of the last round | |
|
Output: |