* 1.2.8, November 21, 2003 - Merged several important bug fixes from 1.3.x * 1.2.7, October 31, 2003 - Added support for reading configuration files - Added constructors so NR and RW keys can be imported easily - Fixed mp_asm64, which was completely broken in 1.2.6 - Removed tm_hw_ia32 module; replaced by tm_hard - Added support for loading certain oddly formed RSA certificates - Fixed spelling of NON_REPUDIATION enum - Renamed the option default_to_ca to v1_assume_ca - Fixed a minor bug in X.509 certificate generation - Fixed a latent bug in the OID lookup code - Updated the RPM spec file - Added to the tutorial * 1.2.6, July 4, 2003 - Major performance increase for PK algorithms on most 64-bit systems - Cleanups in the low-level MPI code to support asm implementations - Fixed build problems with some versions of Compaq's C++ compiler - Removed useless constructors for NR public and private keys - Removed support for the patch_file directive in module files - Removed several deprecated functions * 1.2.5, June 22, 2003 - Fixed a tricky and long-standing memory leak in Pipe - Major cleanups and fixes in the memory allocation system - Removed alloc_mlock, which has been superseded by the ml_unix module - Removed a denial of service vulnerability in X509_Store - Fixed compilation problems with VS .NET 2003 and Codewarrior 8 - Added another variant of PKCS8::load_key, taking a memory buffer - Fixed various minor/obscure bugs which occurred when MP_WORD_BITS != 32 - BigInt::operator%=(word) was a no-op if the input was a power of 2 - Fixed portability problems in BigInt::to_u32bit - Fixed major bugs in SSL3-MAC - Cleaned up some messes in the PK algorithms - Cleanups and extensions for OMAC and EAX - Made changes to the entropy estimation function - Added a 'beos' module set for use on BeOS - Officially deprecated a few X509:: and PKCS8:: functions - Moved the contents of primes.h to numthry.h - Moved the contents of x509opt.h to x509self.h - Removed the (empty) desx.h header - Documentation updates * 1.2.4, May 29, 2003 - Fixed a bug in EMSA1 affecting NR signature verification - Fixed a few latent bugs in BigInt related to word size - Removed an unused function, mp_add2_nc, from the MPI implementation - Reorganized the core MPI files * 1.2.3, May 20, 2003 - Fixed a bug that prevented DSA/NR key generation - Fixed a bug that prevented importing some root CA certs - Fixed a bug in the BER decoder when handing optional bit or byte strings - Fixed the encoding of authorityKeyIdentifier in X509_CA - Added a sanity check in PBKDF2 for zero length passphrases - Added versions of X509::load_key and PKCS8::load_key that take a file name - X509_CA generates 128 bit serial numbers now - Added tests to check PK key generation - Added a simplistic X.509 CA example - Cleaned up some of the examples * 1.2.2, May 13, 2003 - Add checks to prevent any BigInt bugs from revealing an RSA or RW key - Changed the interface of Global_RNG::seed - Major improvements for the es_unix module - Added another Win32 entropy source, es_win32 - The Win32 CryptoAPI entropy source can now poll multiple providers - Improved the BeOS entropy source - Renamed pipe_unixfd module to fd_unix - Fixed a file descriptor leak in the EGD module - Fixed a few locking bugs * 1.2.1, May 6, 2003 - Added ANSI X9.23 compatible CBC padding - Added an entropy source using Win32 CryptoAPI - Removed the Pipe I/O operators taking a FILE* - Moved the BigInt encoding/decoding functions into the BigInt class - Integrated several fixes for VC++ 7 (from Hany Greiss) - Fixed the configure.pl script for Windows builds * 1.2.0, April 28, 2003 - Tweaked the Karatsuba cut-off points - Increased the allowed keylength of HMAC and Blowfish - Removed the 'mpi_ia32' module, pending rewrite - Workaround a GCC 2.95.x bug in eme1.cpp