1- * Relase 0.17.0 (27 May 2021)
1+ * Release 0.17.0 (27 May 2021)
22
33New API:
44* Keys that use explicit curve parameters can now be read and written.
@@ -38,13 +38,13 @@ Bug fix:
3838 `PointJacobi`, `VerifyingKey`, and `SigningKey` so that it behaves
3939 consistently and in the expected way both in Python 2 and Python 3.
4040* Implement lock-less algorithm inside PointJacobi for keeping shared state
41- so that when calculation is aborted with KeyboardInterrupt, the state doesn't
42- become corrupted (this fixes the occasional breakage of ecdsa in interactive
43- shells).
41+ so that when a calculation is aborted with KeyboardInterrupt, the state
42+ doesn't become corrupted (this fixes the occasional breakage of ecdsa in
43+ interactive shells).
4444
4545New features:
4646* The `speed.py` script now provides performance for signature verification
47- without use of precomputation.
47+ without the use of precomputation.
4848* New curves supported: secp112r1, secp112r2, secp128r1, secp160r1.
4949
5050Performance:
@@ -89,11 +89,11 @@ Support for reading and writing private keys in PKCS#8 format.
8989
9090New API:
9191`to_pem` and `to_der` now accept new parameter, `format`, to specify
92- the format of the encoded files, either the dafault , legacy " ssleay" , or
92+ the format of the encoded files, either the default , legacy ` ssleay` , or
9393the new `pkcs8` to use PKCS#8. Note that only unencrypted PKCS#8 files are
9494supported.
9595Add `allow_truncate` to `verify` in `VerifyingKey`, it defaults to True,
96- when specified as False, use of large hashes smaller than curves will be
96+ when specified as False, the use of large hashes smaller than curves will be
9797disallowed (as it was in 0.14.1 and earlier).
9898
9999Bug fix:
@@ -108,7 +108,7 @@ as such.
108108Maintenance:
109109Ensure that version checks will work with Python 4.
110110Format the source with black.
111- Fix uses of `assert_` in test suite.
111+ Fix uses of `assert_` in the test suite.
112112Use newer Ubuntu in Travis to test against OpenSSL 1.1.1 (and thus
113113test the interoperability of ECDH code in Travis).
114114
@@ -131,24 +131,24 @@ New API:
131131`ecdsa.ecdh` module and `ECDH` class.
132132`PointJacobi` added.
133133`VerifyingKey.verify_digest`, `SigningKey.sign_digest` and
134- `SigningKey.sign_digest_deterministic` methods now accept `allow_truncate`
135- argument to enable use of hashes larger than the curve order.
134+ `SigningKey.sign_digest_deterministic` methods now accept the `allow_truncate`
135+ argument to enable the use of hashes larger than the curve order.
136136`VerifyingKey` `from_pem` and `from_der` now accept `hashfunc` parameter
137137like other `from*` methods.
138- `VerifyingKey` has `precompute` method now.
138+ `VerifyingKey` has the `precompute` method now.
139139`VerifyingKey.from_public_point` may now not perform validation of public
140- point when `validate_point=False` argument is passed to method.
140+ point when `validate_point=False` argument is passed to the method.
141141`CurveFp` constructor now accepts the `h` parameter - the cofactor of the
142- elliptic curve, it's used for selection of algorithm of public point
142+ elliptic curve, it's used for the selection of algorithm of public point
143143verification.
144144
145145Performance:
146- `randrange` now will now perform much fewer calls to system random number
146+ `randrange` now will perform much fewer calls to the system random number
147147generator.
148148`PointJacobi` introduced and used as the underlying implementation; speeds up
149149the library by a factor of about 20.
150- Library has now optional dependencies on `gmpy` and `gmpy2`. When they are
151- availbale , the elliptic curve calculations will be about 3 times faster.
150+ The library has now optional dependencies on `gmpy` and `gmpy2`. When they are
151+ available , the elliptic curve calculations will be about 3 times faster.
152152
153153Maintenance:
154154expected minimum version of `six` module (1.9.0) is now specified explicitly
@@ -173,13 +173,13 @@ Make `SigningKey.sign_digest_deterministic` use default object hashfunc when
173173none was provided.
174174`encode_integer` now works for large integers.
175175Make `encode_oid` and `remove_object` correctly handle OBJECT IDENTIFIERs
176- with large second subidentifier and padding in encoded subidentifiers .
176+ with large second sub-identifier and padding in encoded sub-identifiers .
177177
178178New features:
179- Deterministic signature methods now accept `extra_entropy` parameter to further
180- randomise the selection of `k` (the nonce) for signature, as specified in
181- RFC6979.
182- Recovery of public key from signature is now supported.
179+ Deterministic signature methods now accept the `extra_entropy` parameter to
180+ further randomise the selection of `k` (the nonce) for signature, as specified
181+ in RFC6979.
182+ Recovery of the public key from signature is now supported.
183183Support for SEC1/X9.62 formatted keys, all three encodings are supported:
184184"uncompressed", "compressed" and "hybrid". Both string, and PEM/DER will
185185automatically accept them, if the size of the key matches the curve.
@@ -204,7 +204,7 @@ added.
204204`VerifyingKey`: `__repr__` is now supported
205205
206206Deprecations:
207- Python 2.5 is not supported any more - dead code removal.
207+ Python 2.5 is not supported anymore - dead code removal.
208208`from ecdsa.keys import *` will now import only objects defined in that module.
209209Trying to decode a malformed point using `VerifyingKey.from_string`
210210will rise now the `MalformedPointError` exception (that inherits from
@@ -223,10 +223,10 @@ modular_exp: will emit `DeprecationWarning`
223223
224224Hardening:
225225Deterministic signatures now verify that the signature won't leak private
226- key through very unlikely selection of `k` value (the nonce).
226+ key through a very unlikely selection of `k` value (the nonce).
227227Nonce bit size hiding was added (hardening against Minerva attack). Please
228- note that it DOES NOT make library secure against side channel attacks (timing
229- attacks).
228+ note that it DOES NOT make the library secure against side- channel attacks
229+ (timing attacks).
230230
231231Performance:
232232The public key in key generation is not verified twice now, making key
@@ -311,14 +311,15 @@ hashfunc=sha256 in each time they call sign() or verify().
311311
312312Fix test failure against OpenSSL-1.0.0 (previous versions only worked against
313313openssl-0.9.8 or earlier). Increase python requirement to py2.5 or later
314- (still no py3 compatibility, but work is underway). Replace use of obsolete
314+ (still no py3 compatibility, but work is underway). Replace the use of obsolete
315315'sha' library with modern 'hashlib'. Clean up unit test runner (stop using
316316subprocesses).
317317
318318* Release 0.6 (15 Oct 2010)
319319
320- Small packaging changes: extract version number from git, add 'setup.py test'
321- command, set exit code correctly on test failure. Fix pyflakes warnings.
320+ Small packaging changes: extract the version number from git, add
321+ 'setup.py test' command, set exit code correctly on test failure. Fix pyflakes
322+ warnings.
322323
323324* Release 0.5 (27 Apr 2010)
324325
0 commit comments