IV
Initialization vector
A per-message input to a block cipher mode that makes identical plaintexts encrypt differently. Requirements differ by mode: CBC needs an unpredictable IV, while counter-based modes such as GCM need a unique one (a nonce), and reuse under the same key can expose plaintext.
Covered in
AEAD records: AES-GCM nonces, associated data and key limits
Build an encrypted record whose tag binds ciphertext to the intended tenant, record, purpose and format, keep nonces unique within each key’s usage limit, and verify the design with actual AES-GCM.
Padding oracle attacks
Use a byte-level CBC example to see how a tiny validity signal becomes plaintext information, then design verification that checks more than the error message.
WEP: RC4 key reuse and weak IVs
Separate WEP’s repeated-keystream failure, weak-IV key recovery, and unkeyed integrity weakness through a concrete two-packet exercise.
Practice: AES-GCM nonce reuse lab: Fix a nonce allocator that breaks after restart · Local project: Bind ciphertext to the correct record