This is mldsa, a module-lattice-based digital signature algorithm
utility for generating keypairs, signing and verifying files and data.
It has an alter ego, mlsignify, implementing the same command line
switches as signify(1).  The mldsa and mlsignify utilities are based
on the libmldsa(3) library, which uses parts of liboqs and openssl to
provide ML-DSA-65 (NIST FIPS 204) post-quantum digital signatures.
The secret key is usually protected by passphrase-based encryption,
which uses Argon2id as a KDF, and AES256-GCM.

SHA 3 512 is used for digests.

The library and utilities are provided under the MIT license.

Example usage of mldsa:

	% mldsa -k 2026Q5-signing-key keygen
	passphrase:
	Public ML-DSA key in '2026Q5-signing-key.pub'
	Secret ML-DSA key in '2026Q5-signing-key.sec'
	% ls -l 2026Q5-signing-key.*
	-rw-r--r--  1 agc  agc  1952 Aug 30 10:00 2026Q5-signing-key.pub
	-rw-------  1 agc  agc  4086 Aug 30 10:00 2026Q5-signing-key.sec
	% mldsa -k 2026Q5-signing-key sign data
	passphrase:
	'data' signed successfully: 'data.2026Q5-signing-key.sig'
	% mldsa -k 2026Q5-signing-key verify data
	'data' verified successfully: 'data.2026Q5-signing-key.sig'
	% ls -al data*
	-rw-r--r--  1 agc  agc  7549 Aug 17 16:25 data
	-rw-r--r--  1 agc  agc  3309 Aug 30 10:02 data.2026Q5-signing-key.sig
	% 

and mlsignify (with no passphrase protection):

	% mlsignify -G -n -p nopass.pub -s nopass.sec
	Public ML-DSA key in 'nopass.pub'
	Secret ML-DSA key in 'nopass.sec'
	% mlsignify -S -s nopass.sec -m data
	Signature: 'data.nopass.sig'
	% mlsignify -V -p nopass.pub -m data
	Signature: 'data.nopass.sig'
	%

and mlsignify, relying on exit codes with quiet mode on:

	% mlsignify -G -q -n -p nopass.pub -s nopass.sec
	% mlsignify -S -q -s nopass.sec -m data
	% mlsignify -V -q -p nopass.pub -m data
	%
