[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 weidai@eskimo.com 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