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