java.lang.Object
org.bouncycastle.pqc.crypto.mlkem.MLKEMParameters
All Implemented Interfaces:
CipherParameters, KEMParameters

public class MLKEMParametersextends Object implements KEMParameters
Parameters for ML-KEM (Module-Lattice Key Encapsulation Mechanism) algorithms. Defines configuration for different ML-KEM security levels and variants.
  • Field Details

    • ml_kem_512

      public static final MLKEMParameters ml_kem_512
      ml_kem_512.
    • ml_kem_768

      public static final MLKEMParameters ml_kem_768
      ml_kem_768.
    • ml_kem_1024

      public static final MLKEMParameters ml_kem_1024
      ml_kem_1024.
    • name

      private final String name
      Name of the parameter set.
    • k

      private final int k
      The security parameter k of the set.
    • sessionKeySize

      private final int sessionKeySize
      Session key length of the set, in bytes.
  • Constructor Details

    • MLKEMParameters

      private MLKEMParameters(String name, int k, int sessionKeySize)
      Names one parameter set.
      Parameters:
      name - the set's name
      k - the security parameter
      sessionKeySize - the session key length in bytes
  • Method Details

    • getName

      public String getName()
      Return the standardized parameter-set name.
      Returns:
      the standardized name, for example ML-KEM-1024
    • getEngine

      public MLKEMEngine getEngine()
      Create an ML-KEM engine for this parameter set.
      Returns:
      a new engine sized for this parameter set's K value
    • getSessionKeySize

      public int getSessionKeySize()
      Return the encapsulated shared-secret size.
      Returns:
      the size of the encapsulated shared secret in bytes