Cipher Block Chaining (CBC) mode

E845073

Cipher Block Chaining (CBC) mode is a block cipher operation method that enhances confidentiality by XORing each plaintext block with the previous ciphertext block before encryption, making each block’s encryption dependent on all preceding blocks.

All labels observed (4)

Label Occurrences
AES-CBC 1
CBC (Cipher Block Chaining) 1
Cipher Block Chaining (CBC) mode canonical 1

How this entity was disambiguated

Statements (50)

Predicate Object
instanceOf block cipher mode of operation
encryption mode
abbreviation CBC
blockIndexNotation C_i = E_K(P_i XOR C_{i-1})
P_i = D_K(C_i) XOR C_{i-1}
category chaining mode
commonlyUsedWith 3DES
AES
commonlyUses PKCS#7 padding
decryptionStep XOR decrypted block with previous ciphertext block
decrypt ciphertext block with block cipher
discouragedIn modern protocol designs without AEAD
doesNotProvide authentication
integrity
encryptionStep XOR plaintext block with previous ciphertext block
encrypt XOR result with block cipher
errorPropagationLength two blocks
firstBlockDecryptionUses initialization vector
firstBlockXORedWith initialization vector
firstCiphertextBlockNotation C_0 = E_K(P_0 XOR IV)
introducedIn 1976
IVLength block size of underlying cipher
notRecommendedFor high-throughput low-latency network encryption without hardware support
operatesOn fixed-size blocks
parallelizable no for encryption
yes for decryption
primaryGoal confidentiality
property each ciphertext block depends on all previous plaintext blocks
error propagation to next block on bit error in ciphertext
identical plaintext blocks encrypt to different ciphertext blocks if IV differs
publishedIn NIST SP 800-38A
replacedByInManyProtocols Galois/Counter Mode
linked to: AES-GCM
requires initialization vector
padding for non-multiple-of-block-size plaintexts
secret key
sequential processing of blocks for encryption
unique IV per key-stream
unpredictable IV
securityDependsOn IV generation method
underlying block cipher strength
standardizedBy NIST
suitableFor data at rest encryption
file encryption
supports confidentiality only
usedInPastBy IPsec
TLS
uses block cipher
vulnerableIf IV is predictable
IV is reused with same key and first block plaintext is related
vulnerableTo padding oracle attacks

How these facts were elicited

Referenced by (4)

Full triples — surface form annotated when it differs from this entity's canonical label.

NIST SP 800-38A modeDefined Cipher Block Chaining (CBC) mode
POODLE attack vulnerableCipherMode CBC (Cipher Block Chaining)
linked to: Cipher Block Chaining (CBC) mode
Recommendation for Block Cipher Modes of Operation: Methods and Techniques standardizes Cipher Block Chaining mode
linked to: Cipher Block Chaining (CBC) mode
Web Cryptography API supportsAlgorithm AES-CBC
linked to: Cipher Block Chaining (CBC) mode