Skip to main content

Module secret

Module secret 

Source
Expand description

Zeroize-on-Drop wrappers for secret key material (SecretBytes, SecretArray). Zeroize-on-Drop containers for secret key material.

quantica exposes secret keys, signing keys and shared secrets through wrapper types that automatically wipe their backing memory when dropped, using the constant-time zeroization primitive from the [silentops] crate.

Two building blocks live here:

  • SecretBytes — heap-allocated, variable-length zeroizing container, used as the storage for DecapsulationKey<P>, SigningKey<P>, and similar types whose length depends on the parameter set chosen at runtime.
  • SecretArray — stack-allocated, fixed-size zeroizing container, used for the 32-byte ML-KEM shared secret.

Both types implement Deref<Target = [u8]> so callers can pass them transparently to any function expecting a &[u8].

Structs§

SecretArray
Stack-allocated, fixed-size byte array that wipes itself on Drop.
SecretBytes
Heap-allocated, variable-length container that wipes its contents on Drop using silentops::ct_zeroize.