155714Skris
255714Skris		libdes, Version 4.01 10-Jan-97
355714Skris
455714Skris		Copyright (c) 1997, Eric Young
555714Skris			  All rights reserved.
655714Skris
755714Skris    This program is free software; you can redistribute it and/or modify
855714Skris    it under the terms specified in COPYRIGHT.
955714Skris    
1055714Skris--
1155714SkrisThe primary ftp site for this library is
1255714Skrisftp://ftp.psy.uq.oz.au/pub/Crypto/DES/libdes-x.xx.tar.gz
1355714Skrislibdes is now also shipped with SSLeay.  Primary ftp site of
1455714Skrisftp://ftp.psy.uq.oz.au/pub/Crypto/SSL/SSLeay-x.x.x.tar.gz
1555714Skris
1655714SkrisThe best way to build this library is to build it as part of SSLeay.
1755714Skris
1855714SkrisThis kit builds a DES encryption library and a DES encryption program.
1955714SkrisIt supports ecb, cbc, ofb, cfb, triple ecb, triple cbc, triple ofb,
2055714Skristriple cfb, desx, and MIT's pcbc encryption modes and also has a fast
2155714Skrisimplementation of crypt(3).
2255714SkrisIt contains support routines to read keys from a terminal,
2355714Skrisgenerate a random key, generate a key from an arbitrary length string,
2455714Skrisread/write encrypted data from/to a file descriptor.
2555714Skris
2655714SkrisThe implementation was written so as to conform with the manual entry
2755714Skrisfor the des_crypt(3) library routines from MIT's project Athena.
2855714Skris
2955714Skrisdestest should be run after compilation to test the des routines.
3055714Skrisrpw should be run after compilation to test the read password routines.
3155714SkrisThe des program is a replacement for the sun des command.  I believe it
3255714Skrisconforms to the sun version.
3355714Skris
3455714SkrisThe Imakefile is setup for use in the kerberos distribution.
3555714Skris
3655714SkrisThese routines are best compiled with gcc or any other good
3755714Skrisoptimising compiler.
3855714SkrisJust turn you optimiser up to the highest settings and run destest
3955714Skrisafter the build to make sure everything works.
4055714Skris
4155714SkrisI believe these routines are close to the fastest and most portable DES
4255714Skrisroutines that use small lookup tables (4.5k) that are publicly available.
4355714SkrisThe fcrypt routine is faster than ufc's fcrypt (when compiling with
4455714Skrisgcc2 -O2) on the sparc 2 (1410 vs 1270) but is not so good on other machines
4555714Skris(on a sun3/260 168 vs 336).  It is a function of CPU on chip cache size.
4655714Skris[ 10-Jan-97 and a function of an incorrect speed testing program in
4755714Skris  ufc which gave much better test figures that reality ].
4855714Skris
4955714SkrisIt is worth noting that on sparc and Alpha CPUs, performance of the DES
5055714Skrislibrary can vary by upto %10 due to the positioning of files after application
5155714Skrislinkage.
5255714Skris
5355714SkrisEric Young (eay@cryptsoft.com)
5455714Skris
55