views:

102

answers:

3

I have an impossible task of decrypting AES/CBC encrypted data packets sent from a client. I've done tons of research leading me to believe that the encryption is insecure if the IV is static. For this task specifically, the IV is always statically set to 0. Is there any way this can be done?

A: 

Not without the key.

Specifically, assuming there's no padding, the vulnerability that occurs with using the same IV every time is that if you start out encrypting the same data you encrypted last time, you'll get the same encrypted string both times. This allows attackers to infer something about the message content, though it doesn't help them decrypt it.

BlueRaja - Danny Pflughoeft
A: 

The plain text is snippets from the script of Hamlet. The client sends them in random chunks so the length is not even consistent. The packets may eventually repeat but I'm not 100% sure.

/edit Sorry about adding to the question through an answer, I made this question as a unregistered user making it not linked to my account so I can't directly edit the original question.

phambam
You are no worse off knowing nothing about the plaintext than you are if he told you exactly what he was encrypting; without the key, there is nothing you can do. The only vulnerability having a constant IV introduces is that, next time he uses the same IV, you will be able to tell if he sends the same first message(s) as last time, though you won't know what those messages are.
BlueRaja - Danny Pflughoeft
A: 

Zero IV can leak some information about the first bytes of data, however, if they differ this should not be an issue (however, it is not recommended to use). For instance, OpenPGP uses zero IV in some cases.

Nickolay O.