[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Crypto++ 2.0 beta
I'm about to release version 2.0 of Crypto++, and I am looking for people
to do some beta testing on it. I'm especially interested in testing for
compatibility with different compilers/OSs. If you are interested,
please e-mail me stating that you are a US or Canadian citizen or
permanent resident living in US or Canada and that you will not export
the software.
Wei Dai
Here's the readme for Crypto++ if you don't know what it is.
Crypto++: a C++ Class Library of Cryptographic Primitives
Version 2.0 beta 2/13/1996
This library includes:
MD5, SHS, HAVAL, DES, IDEA, WAKE, 3-WAY, TEA, SAFER, Blowfish,
Diamond2, Diamond2 Lite, Sapphire, Luby-Rackoff, MDC, various
modes (CFB, CBC, OFB, counter), DH, DSA, ElGamal, LUC, Rabin,
BlumGoldwasser, elliptic curve cryptosystems, BBS, gzip
compression, Shamir's secret sharing scheme, Rabin's information
dispersal scheme, and zero-knowledge prover and verifier for
graph isomorphism. There are also various miscellanous modules such
as base 64 coding and 32-bit CRC.
RSA and RC5 are noticeably absent. I am still talking to RSA
DSI about adding them back into Crypto++. I hope version 2.1
will include them.
Crypto++ has been compiled and tested with Borland C++ 4.5, MSVC 4.0,
and G++ 2.7.2 on MS-DOS, Windows NT, and a variety of Unix machines.
You are welcome to use it for any purpose without paying me, but see
license.txt for the fine print.
Some short instructions to compile this library:
(you probably need to modify this to suit your environment)
-- if want to use this library with RSAREF, then
1. get a copy of RSAREF
2. untar or unzip it into a directory below this one
3. type "gcc -c -I. *.c" (in the rsaref/source directory) to compile RSAREF
4. edit config.h
5. type "g++ -c -Irsaref/source -I. *.cpp" to compile this library
6. type "g++ *.o rsaref/source/*.o -lstdc++ -lm" to link the test driver
7. type "a.out" to run the test driver
-- if you DON'T want to use this library with RSAREF, then
1. edit config.h (make sure to comment out #define USE_RSAREF)
2. type "g++ -c *.cpp" to compile this library
3. type "g++ *.o -lstdc++ -lm" to link the test driver
4. type "a.out" to run the test driver
Finally, a note on object ownership: If a constructor for A takes
a pointer to an object B (except primitive types such as int and char),
then A owns B and will delete B at A's destruction. If a
constructor for A takes a reference to an object B, then
the caller retains ownership of B and should not destroy it until A no
longer needs it.
Good luck, and feel free to e-mail me at [email protected] if you have
any problems. Also, check http://www.eskimo.com/~weidai/cryptlib.html
for updates and new versions.
Wei Dai
History
1.0 - First public release. Withdrawn at the request of RSA DSI.
- Has a big bug in the RSA key generation code.
1.1 - Removed RSA, RC4, RC5
- Disabled calls to RSAREF's non-public functions
- Minor bugs fixed
2.0 - a completely new, faster multiprecision integer class
- added HAVAL, 3-WAY, TEA, SAFER, LUC, Rabin, BlumGoldwasser,
Elliptic Curve
algorithms
- added the Lucas strong probable primality test
- ElGamal encryption and signature schemes modified to avoid weaknesses
- Diamond changed to Diamond2 because of key schedule weakness
- fixed bug in WAKE key setup
- lots of miscellaneous optimizations