Block Cipher Modes Flashcards
Cipher Block Chaining (CBC)
each block of plaintext is XORed with previous ciphertext block before being encrypted, each ciphertext block depends on all plaintext blocks processed up to that point, IV must be used in the first block
*pads blocks to fill, doesnt use partial
Counter (CTR)
STREAM*
Can turn a block cipher into a stream cipher (like OFB), generates the next keystream block by encrypting successive values of a “counter”
Cipher Feedback (CFB)
allows encryption of partial blocks rather than requiring full blocks for encryption, eliminates the need to pad blocks like CBC
Output Feedback (OFB)
STREAM*
makes a block cipher into a continuous stream cipher - generates keystream blocks, which are then XORed with plaintext blocks to get the ciphertext
Electronic Code Book (ECB)
each block is encrypted independently, BUT identical plaintext blocks are encrypted into identical ciphertext blocks
-simplest mode, each plaintext block encrypts to the same length ciphertext block, same plaintext = same ciphertext
Propagating Cipher Block Chaining (PCBC)
each block of plaintext is XORed with the XOR of the previous plaintext block before being encrypted - as with CBC mode, IV is used in the first block