Skip to content

Releases: GiacomoPope/dilithium-py

Add Apache as dual license

17 Dec 19:04
ec9bbbd

Choose a tag to compare

What's Changed

Full Changelog: 1.3.0...1.4.0

Include PreHash ML-DSA

19 Sep 12:49
56281cc

Choose a tag to compare

What's Changed

Full Changelog: 1.2.2...1.3.0

Include type hints for ML-DSA methods

02 Sep 14:19
7bf091d

Choose a tag to compare

What's Changed

Full Changelog: 1.2.1...1.2.2

Enable recovery of PK bytes from SK bytes

15 Aug 12:18
08b01de

Choose a tag to compare

What's Changed

Small update, but added functionality for PKCS by allowing the recovery of PK bytes from SK bytes

Full Changelog: 1.2.0...1.2.1

Add PKCS for ML-DSA and additional checks for hint unpacking

15 Aug 11:37
45e5f4e

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 1.1.0...1.2.0

Extend ML-DSA API for External Mu

27 Mar 21:43
22f0d83

Choose a tag to compare

To aid with the development of new standards, new functions were exposed for ML-DSA

  • key_derive(seed) -> (pk, sk) is a method which creates a key pair given a seed, which is used in cases where a seed rather than expanded key is stored for the private key. Contributed by @ounsworth in #10
  • prehash_external_mu(self, pk_bytes, m, ctx=b"") -> mu which given a public key and message, creates a 64 byte value by hashing H(H(pk) | M') which is used internally in signing. This allows for an alternative way to rehash a message for ML-DSA without needing a specialised verification function #9. Contributed by @GiacomoPope
  • sign_external_mu(self, sk_bytes, external_mu, deterministic=False) performs signing as in regular ML-DSA but instead of expecting a message and optional context, instead expects the prehashed value mu #9. Contributed by @GiacomoPope

Additionally, the CI has been changed so that all linting and checks are performed by ruff instead of black #11. Contributed by @GiacomoPope

New Contributors

Full Changelog: 1.0.2...1.1.0

Update missing dependency in setup

19 Mar 17:41

Choose a tag to compare

Support Yocto install

06 Mar 15:10

Choose a tag to compare

This update includes a setup.py to allow the pip package to be installed for Yocto

ML-DSA (FIPS 204)

04 Mar 11:13

Choose a tag to compare

Implementation of ML-DSA following the NIST specification FIPS 204. The project is now available on PyPI: https://pypi.org/project/dilithium-py/