1

As an extension to this quesiton, or this one how would you go about attacking a re used pad if the plaintext was randomized before being encrypted?

  0 0 0 1...         Plaintext

  0 1 1 1            seed(truly random number)
  0 1 0 1            Key1
  0 0 1 0            seed + Key1 mod 2 (=Cipher1)

  0 1 1 0...         Plaintext + PRNG(seed) mod 2 (=CipherR)
  1 0 1 0...         Key2(repeating 2 bit key "1 0") 
  1 1 0 0...         CipherR + Key2 mod 2 (=Cipher2) 

  0 0 1 0 1 1 0 0... Cipher1 & Cipher2 → ciphertext

This is using a OTP cipher to transmit the seed of a PRNG, then using a Vernam cipher with a repeating key to transmit the plaintext XORed with the PRN. Increasing the message length a little, hopefully to avoid cribbing.

How do you decode the Vernam cipher after the plain text has been randomized?

daniel
  • 912
  • 5
  • 15

1 Answers1

4

If your PRNG is good and your seed unknown $C_R = pt \oplus PRNG(seed)$ is essentially already an encryption of the plaintext using a stream cipher constructed from a PRNG.

Specifically it is indistinguishable from random.

Therefore $K_2 \oplus C_R$ can be viewed as an encryption of $K_2$. This is not useful but it also doesn't help an attacker.

I would conclude that this scheme is just as secure as constructing a stream cipher from a PRNG.

Elias
  • 4,903
  • 1
  • 14
  • 31