1*0Sstevel@tonic-gate 2*0Sstevel@tonic-gate libdes, Version 4.01 10-Jan-97 3*0Sstevel@tonic-gate 4*0Sstevel@tonic-gate Copyright (c) 1997, Eric Young 5*0Sstevel@tonic-gate All rights reserved. 6*0Sstevel@tonic-gate 7*0Sstevel@tonic-gate This program is free software; you can redistribute it and/or modify 8*0Sstevel@tonic-gate it under the terms specified in COPYRIGHT. 9*0Sstevel@tonic-gate 10*0Sstevel@tonic-gate-- 11*0Sstevel@tonic-gateThe primary ftp site for this library is 12*0Sstevel@tonic-gateftp://ftp.psy.uq.oz.au/pub/Crypto/DES/libdes-x.xx.tar.gz 13*0Sstevel@tonic-gatelibdes is now also shipped with SSLeay. Primary ftp site of 14*0Sstevel@tonic-gateftp://ftp.psy.uq.oz.au/pub/Crypto/SSL/SSLeay-x.x.x.tar.gz 15*0Sstevel@tonic-gate 16*0Sstevel@tonic-gateThe best way to build this library is to build it as part of SSLeay. 17*0Sstevel@tonic-gate 18*0Sstevel@tonic-gateThis kit builds a DES encryption library and a DES encryption program. 19*0Sstevel@tonic-gateIt supports ecb, cbc, ofb, cfb, triple ecb, triple cbc, triple ofb, 20*0Sstevel@tonic-gatetriple cfb, desx, and MIT's pcbc encryption modes and also has a fast 21*0Sstevel@tonic-gateimplementation of crypt(3). 22*0Sstevel@tonic-gateIt contains support routines to read keys from a terminal, 23*0Sstevel@tonic-gategenerate a random key, generate a key from an arbitrary length string, 24*0Sstevel@tonic-gateread/write encrypted data from/to a file descriptor. 25*0Sstevel@tonic-gate 26*0Sstevel@tonic-gateThe implementation was written so as to conform with the manual entry 27*0Sstevel@tonic-gatefor the des_crypt(3) library routines from MIT's project Athena. 28*0Sstevel@tonic-gate 29*0Sstevel@tonic-gatedestest should be run after compilation to test the des routines. 30*0Sstevel@tonic-gaterpw should be run after compilation to test the read password routines. 31*0Sstevel@tonic-gateThe des program is a replacement for the sun des command. I believe it 32*0Sstevel@tonic-gateconforms to the sun version. 33*0Sstevel@tonic-gate 34*0Sstevel@tonic-gateThe Imakefile is setup for use in the kerberos distribution. 35*0Sstevel@tonic-gate 36*0Sstevel@tonic-gateThese routines are best compiled with gcc or any other good 37*0Sstevel@tonic-gateoptimising compiler. 38*0Sstevel@tonic-gateJust turn you optimiser up to the highest settings and run destest 39*0Sstevel@tonic-gateafter the build to make sure everything works. 40*0Sstevel@tonic-gate 41*0Sstevel@tonic-gateI believe these routines are close to the fastest and most portable DES 42*0Sstevel@tonic-gateroutines that use small lookup tables (4.5k) that are publicly available. 43*0Sstevel@tonic-gateThe fcrypt routine is faster than ufc's fcrypt (when compiling with 44*0Sstevel@tonic-gategcc2 -O2) on the sparc 2 (1410 vs 1270) but is not so good on other machines 45*0Sstevel@tonic-gate(on a sun3/260 168 vs 336). It is a function of CPU on chip cache size. 46*0Sstevel@tonic-gate[ 10-Jan-97 and a function of an incorrect speed testing program in 47*0Sstevel@tonic-gate ufc which gave much better test figures that reality ]. 48*0Sstevel@tonic-gate 49*0Sstevel@tonic-gateIt is worth noting that on sparc and Alpha CPUs, performance of the DES 50*0Sstevel@tonic-gatelibrary can vary by upto %10 due to the positioning of files after application 51*0Sstevel@tonic-gatelinkage. 52*0Sstevel@tonic-gate 53*0Sstevel@tonic-gateEric Young (eay@cryptsoft.com) 54*0Sstevel@tonic-gate 55