Re: Pure ML-DSA signature verification
Viktor Dukhovni <[email protected]> Wed, 25 Feb 2026 00:40:39 +1100
| Newsgroups | gmane.comp.encryption.openssl.user |
|---|---|
| Message-ID | <[email protected]> |
On Tue, Feb 24, 2026 at 05:49:18PM +0530, Manish Patidar wrote:
> I am attempting to verify the Pure ML-DSA signature, but I have
> encountered an issue. OpenSSL does not support the Verify update
> operation, meaning the data to be verified must be provided in one
> instance. Is this a limitation of OpenSSL or the Pure ML-DSA
> algorithm?
Pure ML-DSA requires the entire message to be provided in one shot, or
that the caller pre-computes the external-μ value, and passes that,
indicating that the input is the μ value. See EVP_SIGNATURE-ML-DSA(7)
for details.
The upcoming OpenSSL 4.0 will include support for "ML-DSA-MU" as a
pseudo-digest, that you can use with EVP_DigestInit_ex(3) to compute the
external-μ value given the target public key and incremental chunks of
the message. See EVP_MD-ML-DSA-MU(7) (in the OpenSSL 4.0 source tree,
or installed image).
With OpenSSL 3.5 and 3.6 you can compute external-μ yourself, it is just
a 64-byte SHAKE256 digest of the message representative prefixed with a
couple of parameters as described FIPS204 (the public digest key `tr`,
the context string, a domain-separation byte and an optional OID for
HashML-DSA).
--
Viktor. 🇺🇦 Слава Україні!
--
You received this message because you are subscribed to the Google Groups "openssl-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openssl-users+unsubscribe-MCmKBN63+Bmbup2nOX2J7Q@public.gmane.org
To view this discussion visit https://groups.google.com/a/openssl.org/d/msgid/openssl-users/aZ2qVy2Kx-fQIKim%40chardros.imrryr.org.