1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
|
Welcome to the BeeCrypt crypto library!
Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002 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 'COPYING.LIB', included in
this distribution.
Welcome to version 2.2.0 of BeeCrypt:
As you can see from the entries in the NEWS file, quite a lot has been
added again, and compiling the library should now be even easier, since
we've switched to automake & libtool. In view of the changes in recent
releases of these tools, there's now a script in the distribution which
will enable you to properly set up for configuration: installgen.sh
The configure script has a few new options, which will be described in
detail below.
As usual, your comments are welcome.
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. This library can also be
accessed from Java by installing BeeCrypt for Java, a JCE 1.2 crypto
provider and the counterpart of this library.
Included in the library are:
- entropy sources for initializing pseudo-random generators
- pseudo-random generators: FIPS-186, Mersenne Twister
- block ciphers: Blowfish
- hash functions: MD5, SHA-1, SHA-256
- keyed hash functions: MD5/HMAC, SHA-1/HMAC, SHA-256/HMAC
- multi-precision integer library, with assembler-optimized routines
for several processors
- probabilistic primality testing, with optimized small prime trial
division
- discrete logarithm parameter generation over a prime field
- Diffie-Hellman key agreement
- DSA signature scheme
- ElGamal signature scheme (two variants)
- RSA keypair generation with chinese remainder theorem variables
- RSA public & private key operations
- DHAES encryption scheme
Planned for the near future are:
- compliance with and compliance statements for IEEE P1363
- more blockciphers (Rijndael a.k.a AES, Twofish, ... )
- more hash functions (RIPEMD-160, SHA-384, SHA-512, HAVAL, Tiger)
- RSA signatures as specified by RFC-2440.
- Elliptic Curves (ECDSA, ... )
The library has been tested on the following platforms:
- FreeBSD 4.0 alpha
- FreeBSD 4.0, 4.2 x86
- includes assembler optimization (tuned for Pentium and higher)
- Linux glibc 2.x alpha
- Linux glibc 2.x arm
- includes assembler optimization
- Linux glibc 2.x ppc
- includes assembler optimization for 32-bit PowerPC
- Linux glibc 2.x sparc
- includes assembler optimization for Sparc v8
- Linux glibc 2.x x86
- includes assembler optimization (tuned for Pentium and higher)
- Solaris 2.6/2.7/2.8 sparc (with Forte or gnu compilers)
- includes assembler optimization for Sparc v8, v8plus and v9
- Solaris 2.7/2.8 x86 (with Forte or gnu compilers)
- includes assembler optimization (tuned for Pentium and higher)
- Tru64 Unix alpha
- Win32 (Windows 95, 98, NT 4.0, 2000)
- includes assembler optimization (tuned for Pentium and higher)
The library is currently in the process of being ported to:
- Darwin (the library builds as static on MacOS X 10.1; once the gnu
libtool is up to speed it should also compile a dylib.
- Cygwin (the DLL builds now, but needs to be tested)
- QNX (I currently don't have a testing system anymore)
For more information, refer to the HTML documentation in the docs directory.
If you want to report bugs, make suggestions, contribute fixes or
enhancements, please see the beecrypt-specific website:
http://beecrypt.virtualunlimited.com/
or contact me at mailto:beecrypt@virtualunlimited.com
Sincerely,
Bob Deblier
Virtual Unlimited
|