7. ADVANCED ENCRYPTION STANDARD It is also known as , a block cipher adopted as an encryption standard by the U.S. government. Rijndael It is a substitution-permutation network , which is a series of mathematical operations that use substitutions (also called S-Box) and permutations (P-Boxes) and their careful definition implies that each output bit depends on every input bit.
8.
9. SubBytes In the SubBytes step, each byte in the state is replaced with its entry in a fixed 8-bit lookup table, S ; bij = S(aij) . a 0.0 a 0.1 a 0.2 a 0.3 a 1.0 a 1.1 a 1.2 a 1.3 a 2.0 a 2.1 a 2.3 a 3.0 a 3.1 a 3.2 a 3.3 b 0.0 b 0.1 b 0.2 b 0.3 b 1.0 b 1.1 b 1.2 b 1.3 b 2.0 b 2.1 b 2.3 b 3.0 b 3.1 b 3.2 b 3.3 a 2.2 b 2.2
10. ShiftRows In the ShiftRows step, bytes in each row of the state are shifted cyclically to the left. The number of places each byte is shifted differs for each row. a 0.0 a 0.1 a 0.2 a 0.3 a 1.3 a 1.2 a 1.1 a 1.0 a 2.3 a 2.2 a 2.1 a 2.0 a 3.3 a 3.2 a 3.1 a 3.0
11. MixColumns In the MixColumns step, each column of the state is multiplied with a fixed polynomial c(x). a 0.0 a 0.2 a 0.3 a 1.0 a 1.2 a 1.3 a 2.0 a 2.3 a 3.0 a 3.2 a 3.3 a 2.2 b 0.0 b 0.2 b 0.3 b 1.0 b 1.2 b 1.3 b 2.0 b 2.3 b 3.0 b 3.2 b 3.3 b 2.2 a 0.1 a 1.1 a 2.1 a 3.1 b 0.1 b 1.1 b 2.1 b 3.1
12. AddRoundKey In the AddRoundKey step, each byte of the state is combined with a byte of the round subkey using the XOR operation (⊕). a 0.0 a 0.1 a 0.2 a 0.3 a 1.0 a 1.1 a 1.2 a 1.3 a 2.0 a 2.1 a 2.3 a 3.0 a 3.1 a 3.2 a 3.3 b 0.0 b 0.2 b 0.3 b 1.0 b 1.2 b 1.3 b 2.0 b 2.3 b 3.0 b 3.2 b 3.3 b 0.1 b 1.1 b 2.1 b 3.1 k 0.0 k 0.2 k 0.3 k 1.0 k 1.2 k 1.3 k 2.0 k 2.3 k 3.0 k 3.2 k 3.3 k 0.1 k 1.1 k 2.1 k 3.1 a 2.2 b 2.2 k 2.2
13. substitution-permutation network In cryptography, an SP-network, or substitution-permutation network (SPN), is a series of linked mathematical operations used in block cipher algorithms such as AES. These networks consist of S-boxes and P-boxes that transform blocks of input bits into output bits. It is common for these transformations to be operations that are efficient to perform in hardware, such as exclusive or (XOR). S-boxes substitute or transform input bits into output bits. A good S-box will have the property that changing one input bit will change about half of the output bits. It will also have the property that each output bit will depend on every input bit. P-boxes permute or transpose bits across S-box inputs. In addition, at each round the key is combined using some group operation, typically XOR.
14. Key Expansion The four nibbles in the key are grouped into two 8-bit “words”, which will be expanded into 6 words. The first part of the expansion will produces the third and fourth words. 1 2 4 8 16 32 64 128 27 54 108 216 171 77 154 47 94 188 99 198 151 53 106 212179 125 250 239 197 145 57 114228 211 189 97... The round constants are: