Releases: GiacomoPope/dilithium-py
Releases · GiacomoPope/dilithium-py
Extend ML-DSA API for External Mu
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 #10prehash_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 @GiacomoPopesign_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
- @ounsworth made their first contribution in #10
Full Changelog: 1.0.2...1.1.0
Update missing dependency in setup
Full Changelog: 1.0.1...1.0.2
Support Yocto install
This update includes a setup.py
to allow the pip package to be installed for Yocto
ML-DSA (FIPS 204)
Implementation of ML-DSA following the NIST specification FIPS 204. The project is now available on PyPI: https://pypi.org/project/dilithium-py/