Bouncy Castle Cryptography Library 1.87

org.bouncycastle.pqc.crypto.hqc
Class HQCParameters

java.lang.Object
  extended byorg.bouncycastle.pqc.crypto.hqc.HQCParameters
All Implemented Interfaces:
CipherParameters, KEMParameters, PQCParameters

public class HQCParameters
extends java.lang.Object
implements KEMParameters, PQCParameters

Parameter sets of the HQC specification of 2026-10-12 (Tables 6, 8 and 9): n, n1, n2, k, delta, the weights omega and omega_r (= omega_e), the FFT exponent, the Barrett multiplier for n, the size of ekKEM and the Reed-Solomon generator polynomial over GF(2^8) = GF(2)[X]/(X^8 + X^4 + X^3 + X + 1).


Field Summary
static HQCParameters hqc128
           
static HQCParameters hqc192
           
static HQCParameters hqc256
           
 
Method Summary
 int getClassicalSecurityStrength()
          Return the classical security strength of this parameter set: 128, 192 or 256 bits.
 int getEncapsulationLength()
           
 java.lang.String getName()
           
 int getPublicKeyBytes()
           
 int getSecretKeyBytes()
          Return the size of the decapsulation key encoding: the 32-byte seedKEM from which the whole key pair is derived, which is the only dkKEM format of the HQC specification of 2026-10-12.
 int getSecretLength()
           
 int getSecurityCategory()
          Return the NIST security category of this parameter set: 1 for HQC-128, 3 for HQC-192 and 5 for HQC-256 (the categories of the October 2026 specification; the HQC FIPS is still in development).
 int getSessionKeySize()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

hqc128

public static final HQCParameters hqc128

hqc192

public static final HQCParameters hqc192

hqc256

public static final HQCParameters hqc256
Method Detail

getEncapsulationLength

public int getEncapsulationLength()

getSessionKeySize

public int getSessionKeySize()

getName

public java.lang.String getName()

getSecurityCategory

public int getSecurityCategory()
Return the NIST security category of this parameter set: 1 for HQC-128, 3 for HQC-192 and 5 for HQC-256 (the categories of the October 2026 specification; the HQC FIPS is still in development).

Specified by:
getSecurityCategory in interface PQCParameters
Returns:
the security category, as given in NIST IR 8547 Tables 3 and 5.

getClassicalSecurityStrength

public int getClassicalSecurityStrength()
Return the classical security strength of this parameter set: 128, 192 or 256 bits.

Specified by:
getClassicalSecurityStrength in interface PQCParameters
Returns:
the classical security strength in bits.

getPublicKeyBytes

public int getPublicKeyBytes()

getSecretKeyBytes

public int getSecretKeyBytes()
Return the size of the decapsulation key encoding: the 32-byte seedKEM from which the whole key pair is derived, which is the only dkKEM format of the HQC specification of 2026-10-12.

Returns:
32.

getSecretLength

public int getSecretLength()

Bouncy Castle Cryptography Library 1.87