INFORMATION SECURITY
MOHAMAD FAKHRUL RADZI BIN
AZEMAN
DIPLOME IN E-COMMERCE
TECHNOLOGY
Cipher Block Chaining
(CBC)
Allows the same plaintext blocks to be
encrypted to different ciphertext blocks.
Encrypted blocks are “chained” through
XORing.
to make each message unique, an
initialization vector must be used in the
first block.
Concept of CBC
No parallel encrypting , while parallel decrypting is
possible.
A 1-bit error affects two blocks:
the corresponding block is garbled
the corresponding bit is flipped in the next block
Problem with the IV: 1-bit error only flips 1 bit in the 1st
block, no garbled block. Hard to detect!
Solutions:
encipher the IV
don’t transmit the IV, but compute it from a known value
use authentication!
Formula of CBC
the mathematical formula for CBC
encryption is
while the mathematical formula for CBC
decryption is
CBC has been the most commonly used
mode of operation.
Formula of CBC
(cont.)
One way to handle this last issue is through the
method known as ciphertext stealing.
Note that a one-bit change in a plaintext affects all
following ciphertext blocks. A plaintext can be
recovered from just two adjacent blocks of ciphertext.
As a consequence, decryption can be parallelized, and
a one-bit change to the ciphertext causes complete
corruption of the corresponding block of plaintext, and
inverts the corresponding bit in the following block of
plaintext.
Example of CBC
Conclusions
CBC mode should not be used for data
integrity protection
Oracle services can be generally available
Error messages in cryptographic protocols
need to be handled with care
It is better to use message authentication
techniques based on one-way
transformations rather than encryption-
decryption techniques