summaryrefslogtreecommitdiff
path: root/CHANGELOG.md
diff options
context:
space:
mode:
authorSybren A. Stüvel <sybren@stuvel.eu>2019-08-04 18:43:14 +0200
committerSybren A. Stüvel <sybren@stuvel.eu>2019-08-04 18:43:14 +0200
commitd846979e3a2c7c4d68805b9ef5f4a7e1fda61737 (patch)
tree7ce40c3b2b842b17fd7989680169885e65ec5e48 /CHANGELOG.md
parent2f3bbea0a5bcb69c4b3202f2bbc4bd4f51b8e476 (diff)
downloadrsa-git-d846979e3a2c7c4d68805b9ef5f4a7e1fda61737.tar.gz
Converted changelog from txt to Markdown
Diffstat (limited to 'CHANGELOG.md')
-rw-r--r--CHANGELOG.md157
1 files changed, 157 insertions, 0 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..0f67b84
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,157 @@
+# Python-RSA changelog
+
+
+## Version 4.1 - in development
+
+- Dropped support for Python 2 and 3.4.
+- Added type annotations to the source code. This will make Python-RSA easier to use in
+ your IDE, and allows better type checking.
+- Added static type checking via [MyPy](http://mypy-lang.org/).
+- Fix [#129](https://github.com/sybrenstuvel/python-rsa/issues/129) Installing from source
+ gives UnicodeDecodeError.
+- Switched to using [Poetry](https://poetry.eustace.io/) for package
+ management.
+- Added support for SHA3 hashing: SHA3-256, SHA3-384, SHA3-512. This
+ is natively supported by Python 3.6+ and supported via a third-party
+ library on Python 3.5.
+
+
+## Version 4.0 - released 2018-09-16
+
+- Removed deprecated modules:
+ - rsa.varblock
+ - rsa.bigfile
+ - rsa._version133
+ - rsa._version200
+- Removed CLI commands that use the VARBLOCK/bigfile format.
+- Ensured that PublicKey.save_pkcs1() and PrivateKey.save_pkcs1() always return bytes.
+- Dropped support for Python 2.6 and 3.3.
+- Dropped support for Psyco.
+- Miller-Rabin iterations determined by bitsize of key.
+ [#58](https://github.com/sybrenstuvel/python-rsa/pull/58)
+- Added function `rsa.find_signature_hash()` to return the name of the hashing
+ algorithm used to sign a message. `rsa.verify()` now also returns that name,
+ instead of always returning `True`.
+ [#78](https://github.com/sybrenstuvel/python-rsa/issues/13)
+- Add support for SHA-224 for PKCS1 signatures.
+ [#104](https://github.com/sybrenstuvel/python-rsa/pull/104)
+- Transitioned from `requirements.txt` to Pipenv for package management.
+
+
+## Version 3.4.2 - released 2016-03-29
+
+- Fixed dates in CHANGELOG.txt
+
+
+## Version 3.4.1 - released 2016-03-26
+
+- Included tests/private.pem in MANIFEST.in
+- Included README.md and CHANGELOG.txt in MANIFEST.in
+
+
+## Version 3.4 - released 2016-03-17
+
+- Moved development to GitHub: https://github.com/sybrenstuvel/python-rsa
+- Solved side-channel vulnerability by implementing blinding, fixes #19
+- Deprecated the VARBLOCK format and rsa.bigfile module due to security issues, see
+ https://github.com/sybrenstuvel/python-rsa/issues/13
+- Integration with Travis-CI [1], Coveralls [2] and Code Climate [3]
+- Deprecated the old rsa._version133 and rsa._version200 submodules, they will be
+ completely removed in version 4.0.
+- Add an 'exponent' argument to key.newkeys()
+- Switched from Solovay-Strassen to Miller-Rabin primality testing, to
+ comply with NIST FIPS 186-4 [4] as probabilistic primality test
+ (Appendix C, subsection C.3):
+- Fixed bugs #12, #14, #27, #30, #49
+
+[1] https://travis-ci.org/sybrenstuvel/python-rsa
+[2] https://coveralls.io/github/sybrenstuvel/python-rsa
+[3] https://codeclimate.com/github/sybrenstuvel/python-rsa
+[4] http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.186-4.pdf
+
+
+## Version 3.3 - released 2016-01-13
+
+- Thanks to Filippo Valsorda: Fix BB'06 attack in verify() by
+ switching from parsing to comparison. See [1] for more information.
+- Simplified Tox configuration and dropped Python 3.2 support. The
+ coverage package uses a u'' prefix, which was reintroduced in 3.3
+ for ease of porting.
+
+[1] https://blog.filippo.io/bleichenbacher-06-signature-forgery-in-python-rsa/
+
+
+## Version 3.2.3 - released 2015-11-05
+
+- Added character encoding markers for Python 2.x
+
+
+## Version 3.2.1 - released 2015-11-05
+
+- Added per-file licenses
+- Added support for wheel packages
+- Made example code more consistent and up to date with Python 3.4
+
+
+## Version 3.2 - released 2015-07-29
+
+- Mentioned support for Python 3 in setup.py
+
+
+## Version 3.1.4 - released 2014-02-22
+
+- Fixed some bugs
+
+
+## Version 3.1.3 - released 2014-02-02
+
+- Dropped support for Python 2.5
+
+
+## Version 3.1.2 - released 2013-09-15
+
+- Added Python 3.3 to the test environment.
+- Removed dependency on Distribute
+- Added support for loading public keys from OpenSSL
+
+
+## Version 3.1.1 - released 2012-06-18
+
+- 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.