RC4 Modification idea

Status
Not open for further replies.
What if one was to, at every round feed the last ciphertext byte back into the prng so that a bit flip attack anywhere but the last byte would garbage up the whole stream? Perhaps just adding the last byte to j every round would work? Seems like a cheap way to combine auth+encryption. Is there some kind of weird math thing I dont get that would make this not work?


Any attempt at a bit flipping attack will propagate in some not-linear fashion unknown to the attacker.
Because Addition mod n as used here appears to preserve uniqueness, it cannot possibly reduce the entropy of j.
It seems as though this scheme should not compromise security or possibly might enhance it.
And, Bit Flipping would be either impossible or much harder.
What do you guys think?
 
Last edited:
Couldn't a possible attacker simply go through and subtract the previous value to get the standard ciphertext?

Edit, also, when posting any kind of code it is best to use code tags and place different instructions on seperate lines.

Mike.
 
Last edited:
Sorry. My computer won't seem to let me do that so i got rid of the unreadable code entirely.
perhaps it was because wikipedia had weird formatting tags in there or something.

Anyways, there is a line where j = j +s
j is not the actual output, s[s+s[j]] is.

if we change J anything might happen to the next byte of ciphertext.
Adding 1 to j will cause S[J] to be different (s is a permutation that is continually changing)
And unless we know the state of s we can't tell what will happen.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…