Key Encapsulation
HQC
Hamming Quasi-Cyclic Key Encapsulation Mechanism
Mechanism
How it works
Parameter Sets
3 variants shipped
Each variant trades security category against key, ciphertext, or signature size. QNSP exposes all variants via the @cuilabs/liboqs-native binding; tenant crypto-policy determines which are allowed.
| Variant | NIST Level | Public Key | Secret Key | Ciphertext | Note |
|---|---|---|---|---|---|
| HQC-128 | L1 | 2,249 B | 2,289 B | 4,481 B | |
| HQC-192 | L3 | 4,522 B | 4,562 B | 9,026 B | |
| HQC-256 | L5 | 7,245 B | 7,285 B | 14,469 B |
NIST ACVP
Conformance evidence
QNSP runs the official NIST ACVP test vectors against every shipped algorithm. Live evidence + SHA-3-256 tamper digest at /verify/conformance.
Use Cases
When to use it
- Defence-in-depth: pair HQC with ML-KEM where the cost of a lattice-cryptanalysis break would be catastrophic
- Maximum / Government tier policy that mandates dual-family coverage
Trade-offs
What you give up, what you get
- Significantly larger keys and ciphertexts than ML-KEM
- Independent cryptographic assumption from ML-KEM (defence-in-depth)
- Slower than ML-KEM by a meaningful margin in practice
FAQ
HQC — frequently asked questions
Concise, source-of-truth answers to the questions buyers and engineers ask most about this algorithm.
What is HQC?
HQC (Hamming Quasi-Cyclic Key Encapsulation Mechanism) is a code based post-quantum key encapsulation mechanism. It is designed to resist attacks from both classical and quantum computers, and QNSP ships 3 of its parameter sets. It is also known as Hamming Quasi-Cyclic.
Is HQC NIST-standardized?
HQC is not a finalized NIST FIPS standard. QNSP ships it as a non-FIPS post-quantum option, typically to add an independent cryptographic assumption (code based) alongside the FIPS-standardized ML-KEM and ML-DSA for defence-in-depth.
What is HQC used for?
On QNSP, HQC is used for Defence-in-depth: pair HQC with ML-KEM where the cost of a lattice-cryptanalysis break would be catastrophic; Maximum / Government tier policy that mandates dual-family coverage. It is available from the strict crypto-policy tier upward via the liboqs provider.
References