Skip to content

ecdsa 0.18.0

Compare
Choose a tag to compare
@tomato42 tomato42 released this 09 Jul 12:56
· 113 commits to master since this release

New features:

  • Support for EdDSA (Ed25519, Ed448) signature creation and verification.
  • Support for Ed25519 and Ed448 in PKCS#8 and public key files.
  • Support for point precomputation for EdDSA.

New API:

  • CurveEdTw class to represent the Twisted Edwards curve parameters.
  • PointEdwards class to represent points on Twisted Edwards curve and
    provide point arithmetic on it.
  • curve_by_name in curves module to get a Curve object by providing curve
    name.

Bug fix:

  • Accept private EdDSA keys that include public key in the ASN.1 structure.
  • Fix incompatibility with Python 3.3 in handling of memoryviews of empty
    strings.
  • Make the VerifyingKey encoded with explicit parameters use the same
    kind of point encoding for public key and curve generator.
  • Better handling of malformed curve parameters (as in CVE-2022-0778);
    make python-ecdsa raise MalformedPointError instead of AssertionError.

Doc fix:

  • Publish the documentation on https://ecdsa.readthedocs.io/,
    include explanation of basics of handling of ECC data formats and how to use
    the library for elliptic curve arithmetic.
  • Make object names more consistent, make them into hyperlinks on the
    readthedocs documentation.
  • Make security note more explicit (Ian Rodney)
  • Fix the explicit vs named_curve confusion in VerifyingKey docs.

Maintenance:

  • Fix few typos (thanks to Tim Gates and Kian Meng Ang).
  • Updated black version; slight changes to formatting
  • Include interoperability tests for Ed25519 and Ed448 with OpenSSL.