1Welcome to the BeeCrypt crypto library! 2 3Copyright (c) 1997, 1998, 1999, 2000, 2001, 2004, 2005 X-Way Rights BV 4Copyright (c) 2002, 2003, 2005, 2006, 2009 Bob Deblier (for certain parts) 5 6Author: Bob Deblier <bob.deblier@telenet.be> 7 8This library is free software; you can redistribute it and/or 9modify it under the terms of the GNU Lesser General Public 10License as published by the Free Software Foundation; either 11version 2.1 of the License, or (at your option) any later version. 12 13This library is distributed in the hope that it will be useful, 14but WITHOUT ANY WARRANTY; without even the implied warranty of 15MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 16Lesser General Public License for more details. 17 18You should have received a copy of the GNU Lesser General Public 19License along with this library; if not, write to the Free Software 20Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 21 22For the specifics of this license, see file 'COPYING.LIB', included in 23this distribution. 24 25 26 27Welcome to version 4.2.0 of BeeCrypt: 28 29The C++ API has received a major overhaul and has been expanded to deal 30properly with multi-threading on the major platforms. 31 32About BeeCrypt: 33 34BeeCrypt started its life when the need for a portable and fast cryptography 35library arose at Virtual Unlimited in 1997. I'm still trying to make it 36faster, easier to use and more portable, in addition to providing better 37documentation. 38 39Note that depending on where you are, the use of cryptography may be 40limited or forbidden by law. Before using this library, make sure you 41are legally entitled to do so. 42 43<plug> 44Most of the algorithms are implemented from reliable sources such as: 45 46"Handbook of Applied Cryptography" 47 Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone 48 CRC Press 49 50"Applied Cryptography", second edition 51 Bruce Schneier 52 Wiley 53 54 55For crypto enthusiasts these books are invaluable background material. 56 57IEEE P1363 "Standard Specifications for Public Key Cryptography" is a 58very interesting draft standard, which we will try to comply with. 59</plug> 60 61The structures in the library are geared towards exchange with Java 62and its security and cryptography classes. This library can also be 63accessed from Java by installing BeeCrypt for Java, a JCE 1.2 crypto 64provider and the counterpart of this library. 65 66 67Included in the library are: 68 - entropy sources for initializing pseudo-random generators 69 - pseudo-random generators: FIPS-186, Mersenne Twister 70 - block ciphers: AES, Blowfish 71 - hash functions: MD5, RIPEMD-128, RIPEMD-160, RIPEMD-256, RIPEMD-320, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512 72 - keyed hash functions: HMAC-MD5, HMAC-SHA-1, HMAC-SHA-224, HMAC-SHA-256, HMAC-SHA-384, HMAC-SHA-512 73 - multi-precision integer library, with assembler-optimized routines 74 for several processors 75 - probabilistic primality testing, with optimized small prime trial 76 division 77 - discrete logarithm parameter generation over a prime field 78 - Diffie-Hellman key agreement 79 - DSA signature scheme 80 - ElGamal signature scheme (two variants) 81 - RSA keypair generation with chinese remainder theorem variables 82 - RSA public & private key operations 83 - DHAES encryption scheme 84 85Planned for the near future are: 86 - compliance with and compliance statements for IEEE P1363 87 - switch from OSS to ALSA for entropy gathering 88 - experiments with CUDA (AES, MD6?) 89 - more blockciphers (Twofish, ... ) 90 - more blockcipher modes (OFB, ... ) 91 - more hash functions (SHA-3 candidates, HAVAL, Tiger) 92 - Elliptic Curves (ECDSA, ... ) 93 - RSA signatures as specified by RFC-2440. 94 95The library has been tested on the following platforms: 96 - Cygwin 97 - Darwin/MacOS X 98 - Linux glibc 2.x alpha 99 - Linux glibc 2.x arm 100 - Linux glibc 2.x ia64 101 - Linux glibc 2.x m68k 102 - Linux glibc 2.x ppc 103 - Linux glibc 2.x ppc64 104 - Linux glibc 2.x s390 105 - Linux glibc 2.x s390x 106 - Linux glibc 2.x sparc 107 - Linux glibc 2.x x86 108 - Linux glibc 2.x x86_64/amd64 109 - Solaris 2.[6789] sparc (with Forte or gnu compilers) 110 - Solaris 2.[78] x86 (with Forte or GNU compilers) 111 - Tru64 Unix alpha 112 - Win32 (Windows 95, 98, NT 4.0, 2000, XP) 113 114The library is currently in the process of being ported to: 115 - MinGW 116 - AIX (shared libraries don't seem to work in 64-bit mode) 117 118For more information, refer to the HTML documentation, which can be generated 119with Doxygen, in the docs directory. 120 121If you want to report bugs, make suggestions, contribute fixes or 122enhancements, please see the beecrypt-specific website: 123 124http://sourceforge.net/projects/beecrypt 125 126or contact me at mailto:bob.deblier@telenet.be 127 128Sincerely, 129 130Bob Deblier 131