Block cipher
A block cipher is a keyed symmetric cryptographic algorithm that transforms fixed-size blocks of data into ciphertext.
Software Security for Developers
A block cipher is an encryption algorithm that divides data into fixed-size blocks and transforms each block using a secret key.
- How it is used
- Uses fixed-size encryption as the foundation for protecting data, while modes handle messages longer than one block.
- How deep it goes
- Explains block sizing, padding, modes, ECB leakage, IVs, and authenticated encryption, but stops short of mathematical internals.
- Examples
- Uses a 1,605-byte message and repeated HTTP response blocks to demonstrate padding, block processing, and ECB pattern leakage.
- What you can do after
- Configure AES-GCM with secure IVs and authentication tags, while rejecting ECB for practical encryption tasks.
Read how Software Security for Developers explains block cipher →
Real-World Cryptography
A block cipher is a keyed symmetric cipher that encrypts fixed-size blocks of data.
- How it is used
- Explains the fixed-block primitive underlying AES within authenticated encryption.
- How deep it goes
- Defines the interface and permutation model, then sketches AES rounds but defers exact subfunction mechanics.
- Examples
- Uses AES-128-bit blocks, a 4-by-4 byte state, repeated rounds, and the four named AES round functions.
- What you can do after
- Evaluate how AES maps blocks, reverses encryption, and transforms state through keyed rounds.
Hacking Cryptography
A block cipher is a keyed cryptographic algorithm that transforms fixed-size blocks of data.
- How it is used
- Frames symmetric encryption around fixed-size processing, mode selection, padding, and implementation security.
- How deep it goes
- Explains confusion, diffusion, padding, modes, cipher choices, and attack mechanisms, stopping short of cipher internals.
- Examples
- Uses DES, 3DES, AES, PKCS#7 padding, ECB, CBC, padding oracles, and the BEAST attack.
- What you can do after
- Evaluate block cipher choices and diagnose failures involving padding, modes, and reused CBC initialization vectors.
Related concepts
- AESincludes · AES is a standardized symmetric block cipher that encrypts and decrypts data in 128-bit blocks using 128-, 192-, or 256-bit keys.
- Davies–Meyer methodused by · The Davies–Meyer method is a compression-function construction that combines a block-cipher operation with a chaining value.
- message authentication codeused by · A message authentication code is a keyed cryptographic value generated from a message to verify its integrity and authenticity.
- stream ciphercontrasts with · A stream cipher is an encryption algorithm that combines plaintext sequentially with a generated keystream, typically using XOR.
- paddinguses · Padding is the addition of extra space, values, or data around or within a structure to satisfy size, alignment, layout, or processing requirements.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.


