<<Up     Contents

Block cipher modes of operation

A block cipher operates on blocks of fixed length, often 64 or 128 bits. To encrypt longer messages, several modes of operation may be used.

The simplest of these is the electronic codebook (ECB) mode, in which the message is split into blocks and each is encrypted separately. The disadvantage of this method is that identical plaintext blocks are encrypted to identical ciphertext blocks; it does not hide data patterns. The advantage is that error propagation is limited to a single block.

In the cipher-block chaining (CBC) mode, each block of plaintext is XORed with the previous ciphertext block before being encrypted. This way, each ciphertext block is dependent on all plaintext blocks up to that point. On the other hand, an error in one ciphertext blocks impacts two plaintext blocks upon decryption.

The cipher feedback (CFB) and output feedback (OFB) modes make the block cipher into a stream cipher: they generate keystream blocks, which are then XORed with the plaintext blocks to get the ciphertext.

With cipher feedback a keystream block is computed by encrypting the previous ciphertext block.

Output feedback generates the next keystream block by encrypting the last one.

wikipedia.org dumped 2003-03-17 with terodump