A block cipher is a keyed symmetric cipher that encrypts fixed-size plaintext blocks into equally sized ciphertext blocks. AES is the central example: it accepts 128-bit plaintext and returns 128-bit ciphertext, while decryption reverses the mapping. section 4.2.2 section 4.2
A block cipher works through a few linked ideas:
- A key selects a reversible permutation from every possible plaintext block to a corresponding ciphertext block. section 4.2.2
- AES repeatedly applies round functions to a byte state, deriving distinct round keys from the main key. section 4.2.3
- SubBytes, ShiftRows, MixColumns, and AddRoundKey transform the state; repeated rounds create diffusion and the avalanche effect. section 4.2.3
Figure 4.2 A cipher with a key can be seen as a permutation: it maps all the possible plaintexts to all the possible ciphertexts.
Visualize encryption as a key-selected permutation connecting every plaintext block to one ciphertext block. section 4.2.2


