Mike Johnson exabyte!smtplink!mikej at uunet.UU.NET
Fri Feb 26 01:20:53 PST 1993

> This encryption scheme uses XOR to encrypt data 1 character
> at a time.  Because of this it is suitable for protocols
> where you need to send single bytes (or less) at a time.
> Examples of this would be interactive ascii.  Also it
> is easily applicable to crippled lines like 7 bit lines.
> This is because if the plaintext is 7 bits you can send
> just the 7 bits after the XOR.  Even more general you can
> use it to encrypt any size at a time, down to single bits
> if you just have 1 bit to send immediately and dont want
> to wait for more data to become applicable.

> Ok.  So what are its disavantages?  Syncronization, as
> soon as synchronization is gone thats it, its all over.  Each
> block of 'pad' is generated from previous plaintext,  if you
> cant figure out the previous plaintext you are lost.
> Notice it uses a hash() function,  this could be anything, ie
> DES,  or perhaps a one way function (no unhash() is ever needed).
> The algorithm is fairly simple, the beginning is a bit wierd
> and could have been done several ways.  The first 8 bits in
> this implementation are used for synchronization.
> ...(source code omitted)

If you use DES, you are just using a variation of DES in cipher
block chaining mode.  If you use some other hash function, your
cipher is as weak as the hash function.  If you use key bytes
directly to XOR with, and never reuse key material, you have a
variation of the one time pad (which is good, but takes LOTS of
key material).  If you reuse key material when XORing it directly,
you have a weak cipher vulnerable to a known plain text attack.

There is nothing really new here...

For more info on this, if you have a PC and a modem, you can call
a BBS at 303-938-9654, download CRYPTMPJ.ZIP, and read THESIS.DOC
in that file.  Perhaps one of you could put this file at an ftp
site for wider distribution?  The stuff in that file about data
compression is kind of out of date, but the cryptographic
information (including some source code) might be of interest to
some others in this group.

Mike Johnson
mikej at

More information about the cypherpunks-legacy mailing list