4 ms·
Yes. As a simple example, if you XORd your input text with a 1-byte key, the letter frequency of english text would be unchanged. So your most common byte in y
by jbert 15y ago
Yes. As a simple example, if you XORd your input text with a 1-byte key, the letter frequency of english text would be unchanged.
So your most common byte in your output would be likely to be the encrypted char 'e'. You could then recover the key by XOR 'e' with that most common byte.
More complex systems have more complex patterns, but that's what cryptopgraphers do - try and spot weaknesses in an algorithm.
As always, this is a great read: http://chargen.matasano.com/chargen/2009/7/22/if-youre-typing-the-letters-a-e-s-into-your-code-youre-doing.html http://chargen.matasano.com/chargen/2009/7/22/if-youre-typin...
Search for "Garbling a block to confuse an app" and read on from there for a real-world use of output patterns (used when you can partially control the input).
- tptacek 15y agoMultibyte XOR keys are almost as trivial to break as single-byte XOR keys, for what it's worth. And if you know how to do that, there are "best practices" AES modes in which common implementation errors lead to the same attack.
- Groxx 15y agoHappen to have, or know of, a version of that that has the images intact? I'm getting broken ones on every single item in the post.