Python-RSA changelog
========================================

Version 3.1.1 - in development
----------------------------------------

- Fixed doctests for Python 2.7
- Removed obsolete unittest so all tests run fine on Python 3.2

Version 3.1 - released 2012-06-17
----------------------------------------

- Big, big credits to Yesudeep Mangalapilly for all the changes listed
  below!
- Added ability to generate keys on multiple cores simultaneously.
- Massive speedup
- Partial Python 3.2 compatibility (core functionality works, but
  saving or loading keys doesn't, for that the pyasn1 package needs to
  be ported to Python 3 first)
- Lots of bug fixes



Version 3.0.1 - released 2011-08-07
----------------------------------------

- Removed unused import of abc module


Version 3.0 - released 2011-08-05
----------------------------------------

- Changed the meaning of the keysize to mean the size of ``n`` rather than
  the size of both ``p`` and ``q``. This is the common interpretation of
  RSA keysize. To get the old behaviour, double the keysize when generating a
  new key.
  
- Added a lot of doctests

- Added random-padded encryption and decryption using PKCS#1 version 1.5

- Added hash-based signatures and verification using PKCS#1v1.5

- Modeling private and public key as real objects rather than dicts.

- Support for saving and loading keys as PEM and DER files.

- Ability to extract a public key from a private key (PEM+DER)


Version 2.0
----------------------------------------

- Security improvements by Barry Mead.

