oa::cryptography::pqc::verify_batch

Verify ML-DSA-65 signatures on the originating Vulkan device, empty context. Each workgroup processes one (message, signature, public_key) triple. Results are device-resident U32 [batch_size]: 1 = valid, 0 = invalid or malformed. Every invalid path in the shader writes 0; no short-circuit path converts an invalid signature to valid. Arguments messages — U8 rank-1 [total_message_bytes] flat byte buffer. msg_offsets — U32 rank-1 [batch_size] byte start of each message. msg_lengths — U32 rank-1 [batch_size] byte length of each message. signatures — U8 rank-1 [batch_size × 3309] packed signatures in FIPS 204 6.4 wire format. public_keys — U8 rank-1 [batch_size × 1952] packed public keys in FIPS 204 6.2 wire format. Errors Returns an error for mismatched shapes, dtypes, engines, address limits, or an unavailable Vulkan pipeline. Out-of-range message offsets and lengths produce 0 for that row without host readback of the offset/length vectors. Status Experimental. Named software Vulkan execution is a correctness checkpoint; physical-device, performance and side-channel qualification remain separate.

FnRust public API

Function Documentation

pub fn verify_batch( messages: &Matrix, msg_offsets: &Matrix, msg_lengths: &Matrix, signatures: &Matrix, public_keys: &Matrix ) -> Result<Matrix>
Verify ML-DSA-65 signatures on the originating Vulkan device, empty context. Each workgroup processes one (message, signature, public_key) triple. Results are device-resident U32 [batch_size]: 1 = valid, 0 = invalid or malformed. Every invalid path in the shader writes 0; no short-circuit path converts an invalid signature to valid. Arguments messages — U8 rank-1 [total_message_bytes] flat byte buffer. msg_offsets — U32 rank-1 [batch_size] byte start of each message. msg_lengths — U32 rank-1 [batch_size] byte length of each message. signatures — U8 rank-1 [batch_size × 3309] packed signatures in FIPS 204 6.4 wire format. public_keys — U8 rank-1 [batch_size × 1952] packed public keys in FIPS 204 6.2 wire format. Errors Returns an error for mismatched shapes, dtypes, engines, address limits, or an unavailable Vulkan pipeline. Out-of-range message offsets and lengths produce 0 for that row without host readback of the offset/length vectors. Status Experimental. Named software Vulkan execution is a correctness checkpoint; physical-device, performance and side-channel qualification remain separate.