I'm writing a thesis focused on Maurer's provably-secure stream cipher. Long story short, this cipher works by expanding a short key into a long keystream and then XORring this keystream with the plaintext in order to obtain the ciphertext (and vicecersa).

Take this definition of a binary-additive stream cipher: a cipher where the plaintext, ciphertext and keystream are binary strings and where the ciphertext is produced as a XOR addition of the plaintext and the keystream.

Also, take this definition of a reciprocal cipher: a cipher in which the encryption and decryption algorithms are identical (they're the same involution).

With these two definitions, can I state that binary-additive stream ciphers are all reciprocal ciphers? I think so, since if the ciphertext is the XOR of plaintext and keystream, than the plaintext must be the XOR of the keystream and the ciphertext.

  • 6
    $\begingroup$ The inverse of XOR is XOR, so yes. $\endgroup$
    – mikeazo
    Nov 20, 2014 at 18:49
  • $\begingroup$ Yes, that's what I thought. Thank you for the quick response! $\endgroup$ Nov 20, 2014 at 18:52
  • 1
    $\begingroup$ Note that this isn't the case for CFB mode, which is a xor based stream cipher but doesn't fulfill your particular definition. $\endgroup$ Nov 20, 2014 at 18:58
  • $\begingroup$ @CodesInChaos I don't know what CFB mode is :(. If I understand correcly from Wikipedia, it's something that turns a cipher into a self-synchronizing (or asynchronous) stream cipher; binary-additive stream cipher are, by definition, synchronous stream cipher so I don't think that that would be a problem. Again, I'm not sure I'm getting this right :). $\endgroup$ Nov 20, 2014 at 19:03
  • $\begingroup$ @whatyouhide: Welcome to crypto.SE! $\;$ Looks like you are doing fine; I do not spot that you wrote anything silly in question or comment. $\endgroup$
    – fgrieu
    Nov 20, 2014 at 20:15

1 Answer 1


Since additive stream ciphers are involutions, i.e., $$ E_K(\cdot)=D_K(\cdot) $$ for all possible keys $K$, they are also reciprocal.


Your Answer

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

Not the answer you're looking for? Browse other questions tagged or ask your own question.