I'm working and reading about bit-flipping attack and how to set it up. I just got a question, which I am not sure, how I should answer.

Question: 'Why is this easy with a stream cipher but not possible with a block cipher in, e.g., CBC mode?'.

Stream cipher is a symmetric-key-encryption algorithm, which encrypts a stream of bits, where block cipher is an algorithm that allowing us to encrypt blocks of a fixed length. But I can't really find an answer why it's not possible with block cipher and possible with stream chipher.

From what I understand and can read from this thread, that it is possible, but this thread may not be relevant for me.

Anyone, that got an explanation on this?

  • 1
    $\begingroup$ Why is this Possible with CBC not relevant to you? With stream ciphers it is possible at every point, with CBC mode, only the first block may not leave a trail. That is the difference. $\endgroup$
    – kelalaka
    May 11, 2021 at 22:59
  • $\begingroup$ @kelalaka Yeah, I understand that Stream Cipher is possible, but what about Block Cipher? $\endgroup$
    – KingA
    May 11, 2021 at 23:34
  • $\begingroup$ Block ciphers must be used with a mode of operation like ECB, CBC, CFB, OFB, CTR, (not limited to those), ... the last three turns a block cipher into a stream cipher. With ECB you will get garbage if you flip a bit, however, you can arrange the order of the blocks, or use from some other ciphertext. For CBC mode you have seen on the link. It seems that you need to read more fundamentals before the bit-flipping attack. $\endgroup$
    – kelalaka
    May 11, 2021 at 23:41


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.