**Comparison of Block Cipher Modes**

You may study the modes together, but please work out these answers on your own. Summative Grading Assignment.

Complete each question described below. When comparing blocks of ciphertext or plaintext, if corresponding blocks differ then mention which specific blocks differ. If they differ by only 1 bit, mention that fact specifically. If they differ by more than 1 bit, simply state the specific blocks that differ completely. If all blocks differ in the full ciphertext, simply state that there is no relationship. Be as precise as you can in your comparisons to illustrate that you understand the various modes.

- Suppose two plaintext samples P and Q are encrypted using a block cipher with the same secret key K and the same initialization vector IV (or nonce) for those modes that require it. Suppose each plaintext sample is divided into 100 blocks (including padding). If all the plaintext blocks of P and Q are the same, except for block 10, in which they differ by 1 bit, compare the corresponding ciphertext for each block cipher mode
- ECB
- CBC
- CTR
- CFB
- OFB

- Same as #1, except assume P and Q are encrypted with a different IV (nonce) as recommended by cryptographers.
- ECB
- CBC
- CTR
- CFB
- OFB

- Suppose two ciphertext samples P and Q are decrypted using key K and the same IV (or nonce) when required. Suppose each ciphertext sample of 100 blocks differs by 1 bit in block 25 only. Compare the corresponding plaintext blocks following decryption of P and Q for each block cipher mode.
- ECB
- CBC
- CTR
- CFB
- OFB

- Assume each ciphertext block is stored on a separate disk block that can be accessed independently. Suppose only block 50 of an encrypted file of 100 blocks needs to be accessed. Which specific blocks of ciphertext must be accessed to obtain the plaintext for block 50 for the following modes?
- ECB
- CBC
- CTR
- CFB
- OFB

- Which modes permit parallel encryption?

- Which modes permit parallel decryption?

- Which modes permit pre-computation of the key stream?