jspωiki
Block Cipher Mode

Overview[1]#

Block Cipher Mode is an Algorithm that uses a Block Cipher to provide an information service such as confidentiality or message Integrity.

A Block Cipher by itself is only suitable for the secure cryptographic transformation (encryption or decryption) of one fixed-length group of bits called a block. Block Cipher Mode allow a method encrypt a plaintext P to a ciphertext C, where the plaintext and ciphertext are of an arbitrary length.

Most Block Cipher Modes require a unique binary sequence, often called an Initialization Vector (IV), for each encryption operation. The IV has to be non-repeating and, for some modes, random as well. The Initialization Vector is used to ensure distinct Ciphertexts are produced even when the same plaintext is encrypted multiple times independently with the same key. Block Cipher Modes may be capable of operating on more than one block size, but during transformation the block size is always fixed. Block Cipher Mode operate on whole blocks and require that the last part of the data be Padded to a full block if it is smaller than the current block size.

Block Cipher Mode normally requires the Plaintext P be an exact multiple of the block size which requires some Padding bits. Any padding scheme is acceptable, as long as it is reversible.

A Block Cipher Mode describes how to repeatedly apply a Block Cipher's single-block operation to securely transform amounts of data larger than a block.

Common Block Cipher Mode#

Block Cipher Mode Usage#

Block Cipher Mode that provided a confidentiality mode with an Authentication mode could be difficult and error prone.

Most Block Cipher Modes provide confidentiality, but NOT Integrity which can be detected with a separate Message Authentication Code such as CBC-MAC, or a Digital Signature.

Block Cipher Mode which combined confidentiality and integrity into a single Cryptographic Primitive are referred to as Authenticated Encryption, AE.
Examples of Authenticated Encryption modes are:

Information Leakage#

All Block Cipher Mode leak some information.

NIST.SP.800-38#

NIST.SP.800-38 defines: Recommendation for Block Cipher Mode of Operation: Methods and Techniques

More Information#

There might be more information for this subject on one of the following: