rpm/beecrypt
jbj 48b19eaeda Speed up "w = iv(s) mod q" by eliminating the unnecessary {u,v,t}2
computation.

CVS patchset: 5340
CVS date: 2002/02/28 22:08:55
2002-02-28 22:08:55 +00:00
..
docs - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
gas - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
gnu Initial revision 2001-09-18 19:23:46 +00:00
masm - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
mwerks - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
tests Use Knuth algorithm Y for computing DSA "w = inv(s) mod q". 2002-02-28 15:48:39 +00:00
win32 Initial revision 2001-09-18 19:23:46 +00:00
.cvsignore - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
.lclintrc Sanity. 2002-02-10 17:19:28 +00:00
AUTHORS Initial revision 2001-09-18 19:23:46 +00:00
BENCHMARKS Initial revision 2001-09-18 19:23:46 +00:00
BUGS Initial revision 2001-09-18 19:23:46 +00:00
CHANGELOG Initial revision 2001-09-18 19:23:46 +00:00
CONTRIBUTORS Initial revision 2001-09-18 19:23:46 +00:00
COPYING - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
COPYING.LIB Initial revision 2001-09-18 19:23:46 +00:00
ChangeLog Initial revision 2001-09-18 19:23:46 +00:00
DOCUMENTATION Initial revision 2001-09-18 19:23:46 +00:00
Doxyfile.in Doxygen fiddles. 2001-09-20 20:16:11 +00:00
Doxyheader More lclint annotations, now at the strict level with a complete program. 2001-09-23 12:09:48 +00:00
INSTALL - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
LICENSE Initial revision 2001-09-18 19:23:46 +00:00
Makefile.am - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
Makefile.in - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
Makefile.mak Initial revision 2001-09-18 19:23:46 +00:00
NEWS Initial revision 2001-09-18 19:23:46 +00:00
README Initial revision 2001-09-18 19:23:46 +00:00
README.DLL Initial revision 2001-09-18 19:23:46 +00:00
README.WIN32 Initial revision 2001-09-18 19:23:46 +00:00
acconfig.h - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
aclocal.m4 - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
autogen.sh - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
base64.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
base64.h - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
beecrypt.c Factor -type problems into explicit code annotations. 2001-10-16 17:42:18 +00:00
beecrypt.def Initial revision 2001-09-18 19:23:46 +00:00
beecrypt.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
beecrypt.mcp Initial revision 2001-09-18 19:23:46 +00:00
beecrypt.rc Initial revision 2001-09-18 19:23:46 +00:00
beecrypt.spec.in - legacy signatures always checked on -qp and -Vp. 2001-10-25 01:36:32 +00:00
beetest.c Use Knuth algorithm Y for computing DSA "w = inv(s) mod q". 2002-02-28 15:48:39 +00:00
blockmode.c Doxygen fiddles. 2001-09-20 20:16:11 +00:00
blockmode.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
blockpad.c More lclint annotations, now at the strict level with a complete program. 2001-09-23 12:09:48 +00:00
blockpad.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
blowfish.c More lclint annotations. 2001-10-16 14:58:57 +00:00
blowfish.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
blowfishopt.h More lclint annotations, now at the strict level with a complete program. 2001-09-23 12:09:48 +00:00
config.gas.h Initial revision 2001-09-18 19:23:46 +00:00
config.gnu.h.in - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
config.guess - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
config.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
config.sub - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
config.win.h Initial revision 2001-09-18 19:23:46 +00:00
configure.in - make peace with automake et al in 8.0, ugh. 2002-02-20 21:00:15 +00:00
depcomp - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
dhaes.c More lclint annotations. 2001-10-16 14:58:57 +00:00
dhaes.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
dldp.c More lclint annotations. 2001-10-16 14:58:57 +00:00
dldp.h Lclint clean. 2001-10-08 15:48:30 +00:00
dlkp.c More lclint fiddles. 2001-09-23 15:47:37 +00:00
dlkp.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
dlpk.c More lclint fiddles. 2001-09-23 15:47:37 +00:00
dlpk.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
dlsvdp-dh.c Doxygen fiddles. 2001-09-20 20:16:11 +00:00
dlsvdp-dh.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
dsa.c Use Knuth algorithm Y for computing DSA "w = inv(s) mod q". 2002-02-28 15:48:39 +00:00
dsa.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
elgamal.c Use Knuth algorithm Y for computing DSA "w = inv(s) mod q". 2002-02-28 15:48:39 +00:00
elgamal.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
endianness.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
endianness.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
entropy.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
entropy.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
fips180.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
fips180.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
fips180opt.h More lclint annotations, now at the strict level with a complete program. 2001-09-23 12:09:48 +00:00
fips186.c More lclint annotations. 2001-10-16 14:58:57 +00:00
fips186.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
hmac.c More lclint annotations, now at the strict level with a complete program. 2001-09-23 12:09:48 +00:00
hmac.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
hmacmd5.c Factor -type problems into explicit code annotations. 2001-10-16 17:42:18 +00:00
hmacmd5.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
hmacsha1.c Factor -type problems into explicit code annotations. 2001-10-16 17:42:18 +00:00
hmacsha1.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
hmacsha256.c Factor -type problems into explicit code annotations. 2001-10-16 17:42:18 +00:00
hmacsha256.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
install-sh - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
javaglue.c More lclint fiddles. 2001-09-23 15:47:37 +00:00
javaglue.h More lclint annotations, now at the strict level with a complete program. 2001-09-23 12:09:48 +00:00
ltconfig Initial revision 2001-09-18 19:23:46 +00:00
ltmain.sh - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
md5.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
md5.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
memchunk.c More lclint annotations. 2001-10-16 14:58:57 +00:00
memchunk.h Lclint clean. 2001-10-08 15:48:30 +00:00
missing Initial revision 2001-09-18 19:23:46 +00:00
mkinstalldirs - make peace with automake et al in 8.0, ugh. 2002-02-10 21:13:52 +00:00
mp32.c Use Knuth algorithm Y for computing DSA "w = inv(s) mod q". 2002-02-28 15:48:39 +00:00
mp32.h Use Knuth algorithm Y for computing DSA "w = inv(s) mod q". 2002-02-28 15:48:39 +00:00
mp32barrett.c Speed up "w = iv(s) mod q" by eliminating the unnecessary {u,v,t}2 2002-02-28 22:08:55 +00:00
mp32barrett.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
mp32number.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
mp32number.h - upgrade to beecrypt-2.2.0pre. 2001-10-08 16:12:33 +00:00
mp32opt.h Lclint clean. 2001-10-08 15:48:30 +00:00
mp32prime.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
mp32prime.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
mtprng.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
mtprng.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
rsa.c More lclint annotations. 2001-10-16 14:58:57 +00:00
rsa.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
rsakp.c More lclint annotations. 2001-10-16 14:58:57 +00:00
rsakp.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
rsapk.c More lclint annotations. 2001-10-16 14:58:57 +00:00
rsapk.h Resolve conflicts. 2001-10-08 14:48:22 +00:00
sha1hmac.c Initial revision 2001-09-18 19:23:46 +00:00
sha1hmac.h Initial revision 2001-09-18 19:23:46 +00:00
sha256.c - missing key(s) on keyring when verifying a signature is now an error. 2002-01-18 22:51:30 +00:00
sha256.h lclint fiddles to annotate globals. 2001-10-15 03:22:10 +00:00
stamp-h.in Initial revision 2001-09-18 19:23:46 +00:00
timestamp.c Add autogen.sh et al to build from CVS. 2001-09-19 16:16:15 +00:00
timestamp.h Resolve conflicts. 2001-10-08 14:48:22 +00:00

README

Welcome to the BeeCrypt crypto library!

Copyright (c) 1997-2000 Virtual Unlimited B.V.

Author: Bob Deblier <bob@virtualunlimited.com>

This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

For the specifics of this license, see file 'LICENSE', included in this
distribution.



About BeeCrypt:

This library is an ongoing project of Virtual Unlimited B.V. Its goal is to
provide strong and fast cryptography for use by our products, but we're
not limiting the use to that. We're releasing it under the LGPL license,
because we feel that cryptography should be open to inspection by everybody,
and available for use by everybody to safeguard privacy.

Note that depending on where you are, the use of cryptography may be limited
or forbidden by law. Before using this library, make sure you are legally
entitled to do so.

For more on Virtual Unlimited B.V. and our products please consult our website:

http://www.virtualunlimited.com

<plug>
Most of the algorithms are implemented from reliable sources such as:

"Handbook of Applied Cryptography"
 Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone
 CRC Press

"Applied Cryptography", second edition
 Bruce Schneier
 Wiley

For crypto enthusiasts these books are invaluable background material.

IEEE P1363 "Standard Specifications for Public Key Cryptography" is a very
interesting draft standard, which we will try to comply with.
</plug>

The structures in the library are geared towards exchange with Java
and its security and cryptography classes. We already have quite a number
of cryptographic classes developed in Java, which will be released in the
future in another open source project.

Included in the library are:
    - entropy sources for initializing pseudo-random generators
    - pseudo-random generators: FIPS-186, Mersenne Twister
    - block ciphers: Blowfish
    - hash functions: SHA-1
    - keyed hash functions: SHA-1/HMAC
    - multi-precision integer library, with assembler-optimized routines
    - probabilistic primality testing, with optimized small prime trial division
    - discrete logarithm parameter generation over a prime field
    - Diffie-Hellman key agreement
    - ElGamal signature scheme (two variants)

Planned for the near future are:
    - compliance with and compliance statements for IEEE P1363
	- DHAES
    - DSA (i.e. the rest of FIPS-186)
    - more blockciphers (Twofish, Rijndael, ... )
	- more hash functions (RIPEMD-160, HAVAL, ... )
	- Elliptic Curves (ECDSA, ... )

The library has been tested on the following platforms:
    - Solaris 2.6 Sparc, Solaris 2.7 Sparc
        - includes assembler optimization for ultrasparc
    - Linux glibc 2.x x86
        - includes assembler optimization (tuned for Pentium Pro and higher)
    - Linux glibc 2.x ppc
        - includes assembler optimization (generic 32-bit PowerPC)
    - Win32 (Windows 95, 98, NT 4.0)
        - includes assembler optimization (tuned for Pentium Pro and higher)
        - once the entropy provider bug is fixed (see BUGS), the library should
		  work fine on Windows 2000.
Planned platforms for the near future are:
    - Solaris Intel
    - FreeBSD x86

Consult file 'DOCUMENTATION' on how to use the library. There is also a program
called 'beetest.c' included which gives an example of how to use the API. You
can also use it to test whether your compiled library works.

If you want to report bugs, make suggestions, contribute fixes or
enhancements, please see our website: http://beecrypt.virtualunlimited.com
or contact me at beecrypt@virtualunlimited.com

Sincerely

Bob Deblier