deslike generates code for a pair of matching encryption routines,

encrypt(unsigned char dest[],unsigned char source[],unsigned char key[]);
decrypt(unsigned char dest[],unsigned char source[],unsigned char key[]);

based on parameters passed on the command line. The functions are very
similiar to the DES algorithm, only the various tables and choices for
bits to use are generated randomly based on a random seed.

The routines are complementary, meaning each is the reverse of the other.

Use: deslike < key bits> < data bits> < # of windings> < salt>

< key bits> = # of bits for the key (DES has 56)
< data bits> = # of bits of data for each piece to encrypt/decrypt. DES has 64.
< # of windings> = # of steps for flipping left and right halves of the data
                  and XORing in the hash based on half of the data and the
                  key. (DES has 16).
< salt> = random number seed.

Increasing windings will increase security (I think) but slow the routines
down and make them bigger. Increasing key bits will increase security (I think)
and make it harder to crack.

deslike is released under the terms of the GPL license. The source code
deslike generates can be used freely, although credits might be nice.
If you distribute deslike you must also include this README file and deslike's

No guarantees are made as to suitability for this program or the code
generated for any specific purpose. Use it at your own risk!

deslike was written by
David Ashley

deslike's home page is

Download deslike02.tgz

This page has been accessed (e^i) times since 20000125.