ML-DSA Verify
Verifies post-quantum digital signature (FIPS 204)
Overview
Verifies a post-quantum ML-DSA digital signature (NIST FIPS 204) against the original message and the signer's ML-DSA public key, emitting a boolean verdict on the Valid output port.
Uses a Judgement Error Profile: invalid signatures output Valid = false without throwing an error unless Treat As Error is configured.
When to Use
- Verifying ML-DSA-44, ML-DSA-65, or ML-DSA-87 signatures.
Parameter Configuration
| Parameter (ID) | Type & Default | Visibility Condition | Description & Options |
|---|---|---|---|
Variantvariant |
selectDefault: 65 |
Always visible | Must match the ML-DSA security level used during signing (44, 65, or 87).
|
Treat As ErrorerrorOnValue |
selectDefault: "" (empty) |
Always visible | Judgement error reinterpretation: set to false (or true) to raise an error when Valid matches that value.
|
Error CodeerrorCode |
textDefault: "" (empty) |
When errorOnValue is true or false |
Custom error code when Treat As Error triggers. |
Error MessageerrorMessage |
textDefault: "" (empty) |
When errorOnValue is true or false |
Custom error message when Treat As Error triggers. |
Port I/O Specification
See Ports & Connections for general wiring rules, data type colors, and dynamic port creation.
Input Ports
Port Nature: Fixed Input Ports (3 total).
| Port Name | Port ID | Data Type | Required | Visibility Condition | Description |
|---|---|---|---|---|---|
Public Key |
publicKey |
Bytes |
Required | Always visible | Signer's ML-DSA public key (1312B, 1952B, or 2592B). |
Message |
message |
Bytes |
Required | Always visible | Original message bytes (Uint8Array). |
Signature |
signature |
Bytes |
Required | Always visible | Candidate ML-DSA signature bytes (2420B, 3309B, or 4627B) to verify. |
Output Ports
Port Nature: Fixed Output Ports (1 total).
| Port Name | Port ID | Data Type | Visibility Condition | Description |
|---|---|---|---|---|
Valid |
isValid |
Bool |
Always visible | Boolean verification result (true if valid, false otherwise). |
Error Cases
This node uses a Judgement Error Profile on its boolean output port isValid:
- Default Behavior (
Treat As Error = None): Verification or comparison mismatches do not raise a runtime error; instead, the node completes normally and emitsfalse(ortrue) onisValidso downstream nodes or scripts can inspect the boolean result. - Reinterpretation as Error (
Treat As Error = falseortrue): When the boolean verdict onisValidequals the configurederrorOnValuesetting, the engine transitions this node into anERRORstate using your custom Error Code and Error Message and halts downstream execution.
Examples
Verifying an ML-DSA-65 Signature
Verify the signature produced by ML-DSA Sign.
- Connect
Public Key,Message, andSignatureto ML-DSA Verify withVariant = ML-DSA-65;Validoutputstrue.