Breaking CBC, or Randomness Never Was Happiness

Breaking CBC, or Randomness Never Was Happiness

Hiding patterns in encrypted messages to make the transmission look like random symbols is the goal of cryptography. However, all ciphers do not completely disguise those patterns, making decryption possible. In response to this problem, modes were introduced to break up patterns and to increase the “randomness” of an encrypted message. In the case of Cipher Block Chaining mode (CBC) the randomizing material is the cipher text from the preceding block. CBC uses a “feed forward” algorithm and a regular structure that provides attackable data. In fact, there is so much information in the structure and associated data that CBC wrapped around ANY cipher can be efficiently broken.

We show that by using the blocks of the CBC algorithm both linear and non-linear encryptions using CBC can be broken. Further, we show that no linear cipher (such as a permutation or XOR cipher) is safe when used in conjunction with the mode and that non-linear ciphers (such as AES) are also vulnerable. Using the Birthday Paradox to predict how much data is needed to allow for decryption. This talk will demonstrate the break and show the mathematical background of the attack.

Presented by