Cipher Block Chaining

In this approach, one block is processed at a time, with the output of the current block being XORed into the next block, starting with an initialisation vector.

This leads to a reduction in regularities in the ciphertext.