Hubbry Logo
Block size (cryptography)Block size (cryptography)Main
Open search
Block size (cryptography)
Community hub
Block size (cryptography)
logo
7 pages, 0 posts
0 subscribers
Be the first to start a discussion here.
Be the first to start a discussion here.
Block size (cryptography)
Block size (cryptography)
from Wikipedia

In modern cryptography, symmetric key ciphers are generally divided into stream ciphers and block ciphers. Block ciphers operate on a fixed length string of bits. The length of this bit string is the block size.[1] Both the input (plaintext) and output (ciphertext) are the same length; the output cannot be shorter than the input – this follows logically from the pigeonhole principle and the fact that the cipher must be reversible – and it is undesirable for the output to be longer than the input.

Until the announcement of NIST's AES contest, the majority of block ciphers followed the example of the DES in using a block size of 64 bits (8 bytes). However, the birthday paradox indicates that after accumulating several blocks equal to the square root of the total number possible, there will be an approximately 50% chance of two or more being the same, which would start to leak information about the message contents. Thus even when used with a proper encryption mode (e.g. CBC or OFB), only 232 × 8 B = 32 GB of data can be safely sent under one key.[citation needed] In practice a greater margin of security is desired, restricting a single key to the encryption of much less data  — say a few hundred megabytes. At one point that seemed like a fair amount of data, but today it is easily exceeded. If the cipher mode does not properly randomise the input, the limit is even lower.

Consequently, AES candidates were required to support a block length of 128 bits (16 bytes). This should be acceptable for up to 264 × 16 B = 256 exabytes of data, and would suffice for many years after introduction. The winner of the AES contest, Rijndael, supports block and key sizes of 128, 192, and 256 bits, but in AES the block size is always 128 bits. The extra block sizes were not adopted by the AES standard.

Many block ciphers, such as RC5, support a variable block size. The Luby-Rackoff construction and the Outerbridge construction can both increase the effective block size of a cipher.

Joan Daemen's 3-Way and BaseKing have unusual block sizes of 96 and 192 bits, respectively.

See also

[edit]

References

[edit]
Revisions and contributorsEdit on WikipediaRead on Wikipedia
from Grokipedia
In , the block size is the fixed number of bits in the input or output block processed by a during a single or decryption operation. Block ciphers, which form the basis of many symmetric schemes, divide messages into these discrete blocks for processing, requiring padding for messages that do not align perfectly with the block length. Historically, early block ciphers like the (DES), standardized in FIPS 46 in 1977, employed a 64-bit block size, which processes 8 bytes of data at a time. In contrast, modern standards such as the (AES), specified in FIPS 197 in 2001, use a 128-bit block size across its variants (AES-128, AES-192, and AES-256), enabling the encryption of 16 bytes per block while supporting key lengths of 128, 192, or 256 bits. These sizes reflect an evolution driven by the need for enhanced security, as smaller blocks like DES's 64 bits became vulnerable to attacks exploiting the birthday paradox, limiting secure data volumes to approximately 2^{32} blocks. The block size profoundly influences the security and performance of block cipher modes of operation, such as ECB, CBC, and GCM, where it determines the granularity of data handling and the potential for collisions in . Larger block sizes, like 128 bits in AES, provide greater resistance to cryptanalytic attacks and support higher data throughput in secure communications, though they may increase computational overhead in resource-constrained environments. As of 2025, NIST is developing standards for wider block sizes, such as 256 bits using Rijndael-256, to support large-scale data protection in block cipher modes.

Fundamentals

Definition

In symmetric cryptography, the block size is the fixed number of bits in each input and output block that a processes during a single or decryption operation. The is divided into these uniform blocks for processing, with common sizes including 64 bits or 128 bits. Block ciphers provide the primary context for block size, as they are symmetric-key algorithms that transform fixed-length blocks of data. Unlike the key size, which determines the length of the secret key and thereby the cipher's resistance to exhaustive key searches, the block size governs the chunking of data into discrete units for algorithmic application. For instance, in the (AES), the block size remains fixed at 128 bits regardless of the key length, which can be 128, 192, or 256 bits. The basic processing of blocks in a block cipher is denoted by the equation Ci=EK(Pi)C_i = E_K(P_i), where PiP_i is the ii-th plaintext block of nn bits, EKE_K is the encryption function parameterized by the key KK, and CiC_i is the resulting ciphertext block of the same size. Such ciphers are conventionally referred to as nn-bit block ciphers, with nn indicating the block size.

Role in Block Ciphers

Block ciphers are symmetric-key algorithms that encrypt and decrypt fixed-size blocks of data using a secret key, processing each block independently or in chained modes of operation. The block size, typically denoted as nn bits, defines the unit of data processed in each operation and directly influences the cipher's internal state and computational structure. For instance, common block sizes include 64 bits in older designs like DES and 128 bits in modern standards like AES, where the size determines the scale of transformations applied to achieve . In the encryption process, the input is divided into blocks of the fixed block size nn, and each block is then transformed through multiple rounds of a core function to produce the corresponding block. Decryption reverses this process using the same key, ensuring invertibility without requiring additional . The block size nn governs the dimensions of this transformation, as the cipher's rounds operate on the entire block or its subdivisions to mix bits thoroughly. Many block ciphers, such as DES, employ a Feistel structure, where the block size nn must be even (typically n=2tn = 2t) to split the input into two equal halves, left LL and right RR, each of tt bits. In each round ii, the halves are updated as follows: Li=Ri1L_i = R_{i-1} Ri=Li1f(Ri1,Ki)R_i = L_{i-1} \oplus f(R_{i-1}, K_i) where ff is a round function applying key-dependent substitutions and permutations to the right half, and KiK_i is the subkey for round ii. This splitting ensures balanced across the block, with the even block size enabling the XOR combination that preserves invertibility for decryption by reversing the subkey order. In DES, for example, n=64n = 64 bits yields t=32t = 32-bit halves processed over 16 rounds. Other block ciphers, like AES, use a substitution-permutation network (SPN) structure, where the block nn defines the full internal state subjected to layered operations without halving. In AES, the 128-bit block is arranged as a 4×4 byte array (state), and each round applies byte substitutions via S-boxes, row shifts, column mixing, and key addition, scaled directly to the state for comprehensive bit mixing. The block thus dictates the network's width, ensuring that permutations and substitutions propagate changes across the entire block in subsequent rounds.

Security Aspects

Collision Risks

In block ciphers, the block size directly affects the likelihood of ciphertext collisions, where two distinct blocks encrypt to the same output under the same key, potentially compromising by revealing relationships between plaintexts. This vulnerability arises from the birthday paradox, which states that for an n-bit block size, the probability of a collision reaches approximately 50% after about 2n/22^{n/2} encryptions, as the output space of 2n2^n possible values becomes insufficient to avoid repeats with high probability. The precise approximation for the probability of at least one collision among k blocks is given by P(collision)1ek(k1)22n,P(\text{collision}) \approx 1 - e^{-\frac{k(k-1)}{2 \cdot 2^n}}, where 2n2^n denotes the size of the block space; this formula derives from the expected number of pairwise comparisons leading to a match, and for k2ln22n1.1772n/2k \approx \sqrt{2 \ln 2 \cdot 2^n} \approx 1.177 \cdot 2^{n/2}
Add your contribution
Related Hubs
User Avatar
No comments yet.