Closed jakemas closed 4 days ago
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 78.93%. Comparing base (
ab8953b
) to head (019e09d
). Report is 1 commits behind head on main.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
🚨 Try these New Features:
Issues:
Resolves #CryptoAlg-2723
Description of changes:
This PR adds the internal functions from FIPS 204: Module-Lattice-Based Digital Signature Standard. We base this implementation on the upstream reference implementation of ML-DSA https://github.com/pq-crystals/dilithium/commit/444cdcc84eb36b66fe27b3a2529ee48f6d8150c2. However, the upstream commit only includes implementation of
ML-DSA.Sign_internal
andML-DSA.Verify_internal
, so we also includeML-DSA.KeyGen_internal
to complete the implementation.Changes:
ML-DSA.KeyGen
as crypto_sign_keypairML-DSA.Sign
as crypto_sign_signatureML-DSA.Verify
as crypto_sign_verifyML-DSA.KeyGen_internal
as crypto_sign_keypair_internalML-DSA.Sign_internal
as crypto_sign_signature_internalML-DSA.Verify_internal
as crypto_sign_verify_internalpqdsa
API:pq_custom_randombytes.{c/h}
Call-outs:
We can remove the testing mechanism for the KATs
pq_custom_randombytes
as we now support KATs that use the internal functions that provide randomness via an input seed.Testing:
The KATs have been migrated to use the internal functions.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.