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