ML-DSA KeyGen (FIPS 204)
Post-Quantum Lattice-based Digital Signature Algorithm keypair generator
Overview
Generates a post-quantum lattice-based digital signature keypair using ML-DSA (Module-Lattice-Based Digital Signature Algorithm, derived from CRYSTALS-Dilithium) as standardized in NIST FIPS 204.
Supports all three FIPS 204 security levels:
ML-DSA-44(NIST Security Level 2): 1,312-byte public key, 2,560-byte secret key, 2,420-byte signature.ML-DSA-65(NIST Security Level 3, default): 1,952-byte public key, 4,032-byte secret key, 3,309-byte signature.ML-DSA-87(NIST Security Level 5): 2,592-byte public key, 4,896-byte secret key, 4,627-byte signature.
When to Use
- Generating quantum-resistant signing and verification keypairs for ML-DSA Sign and ML-DSA Verify.
Parameter Configuration
| Parameter (ID) | Type & Default | Visibility Condition | Description & Options |
|---|---|---|---|
Security Levelvariant |
selectDefault: 65 |
Always visible | Selects the FIPS 204 security parameter set: 44 (Level 2), 65 (Level 3, recommended default), or 87 (Level 5).
|
Port I/O Specification
See Ports & Connections for general wiring rules, data type colors, and dynamic port creation.
Input Ports
This node has no input ports.
Output Ports
Port Nature: Fixed Output Ports (2 total).
| Port Name | Port ID | Data Type | Visibility Condition | Description |
|---|---|---|---|---|
Public Key |
publicKey |
Bytes |
Always visible | ML-DSA verification public key (1312B for 44, 1952B for 65, 2592B for 87). |
Secret Key |
secretKey |
Bytes |
Always visible | ML-DSA signing secret key (2560B for 44, 4032B for 65, 4896B for 87). |
Error Cases
This node has no runtime failure cases (errorProfile: none) and always succeeds for any valid typed input.
Examples
Generating an ML-DSA-65 Keypair
Create a NIST Level 3 post-quantum signature keypair.
- Leave Security Level set to
ML-DSA-65 (NIST Level 3)and wireSecret Keyto ML-DSA Sign andPublic Keyto ML-DSA Verify.