Top Inners Fields Constructors Methods
org.bouncycastle.jcajce.provider.asymmetric.mlkem

public Class MLKEMKeyPairGeneratorSpi

extends KeyPairGenerator
Class Inheritance
Known Direct Subclasses
org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi.MLKEM512, org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi.MLKEM768, org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi.MLKEM1024
Imports
java.security.InvalidAlgorithmParameterException, .KeyPair, .NoSuchAlgorithmException, .SecureRandom, java.security.spec.AlgorithmParameterSpec, org.bouncycastle.crypto.AsymmetricCipherKeyPair, .CryptoServicesRegistrar, org.bouncycastle.jcajce.spec.MLKEMParameterSpec, org.bouncycastle.jcajce.util.BCJcaJceHelper, org.bouncycastle.pqc.crypto.mlkem.MLKEMKeyGenerationParameters, .MLKEMKeyPairGenerator, .MLKEMParameters, .MLKEMPrivateKeyParameters, .MLKEMPublicKeyParameters, org.bouncycastle.pqc.jcajce.provider.util.SpecUtil, org.bouncycastle.util.Strings

Nested and Inner Type Summary

Modifier and TypeClass and Description
public static class
public static class
public static class

Field Summary

Modifier and TypeField and Description
pack-priv MLKEMKeyPairGenerator
pack-priv boolean
private MLKEMParameters
pack-priv MLKEMKeyGenerationParameters
pack-priv SecureRandom

Constructor Summary

AccessConstructor and Description
public
protected

Method Summary

Modifier and TypeMethod and Description
public KeyPair
private static String
public void
initialize(int
the keysize. This is an algorithm-specific metric, such as modulus length, specified in number of bits.
strength
,
SecureRandom
the source of randomness.
random
)

Overrides java.security.KeyPairGenerator.initialize.

Initializes the key pair generator for a certain keysize with the given source of randomness (and a default parameter set).

public void
initialize(AlgorithmParameterSpec
the parameter set used to generate the keys.
params
)

Overrides java.security.KeyPairGenerator.initialize.

Initializes the key pair generator using the specified parameter set and the SecureRandom implementation of the highest-priority installed provider as the source of randomness.

public void
initialize(AlgorithmParameterSpec
the parameter set used to generate the keys.
params
,
SecureRandom
the source of randomness.
random
)

Overrides java.security.KeyPairGenerator.initialize.

Initializes the key pair generator with the given parameter set and source of randomness.

Inherited from java.security.KeyPairGenerator:
genKeyPairgetAlgorithmgetInstancegetInstancegetInstancegetProviderinitialize

Field Detail

engineback to summary
pack-priv MLKEMKeyPairGenerator engine
initialisedback to summary
pack-priv boolean initialised
mlkemParametersback to summary
private MLKEMParameters mlkemParameters
paramback to summary
pack-priv MLKEMKeyGenerationParameters param
randomback to summary
pack-priv SecureRandom random

Constructor Detail

MLKEMKeyPairGeneratorSpiback to summary
public MLKEMKeyPairGeneratorSpi()
MLKEMKeyPairGeneratorSpiback to summary
protected MLKEMKeyPairGeneratorSpi(MLKEMParameterSpec paramSpec)

Method Detail

generateKeyPairback to summary
public KeyPair generateKeyPair()

Overrides java.security.KeyPairGenerator.generateKeyPair.

Doc from java.security.KeyPairGenerator.generateKeyPair.

Generates a key pair.

If this KeyPairGenerator has not been initialized explicitly, provider-specific defaults will be used for the size and other (algorithm-specific) values of the generated keys.

This will generate a new key pair every time it is called.

This method is functionally equivalent to genKeyPair.

Returns:KeyPair

the generated key pair

getNameFromParamsback to summary
private static String getNameFromParams(AlgorithmParameterSpec paramSpec)
initializeback to summary
public void initialize(int strength, SecureRandom random)

Overrides java.security.KeyPairGenerator.initialize.

Doc from java.security.KeyPairGenerator.initialize.

Initializes the key pair generator for a certain keysize with the given source of randomness (and a default parameter set).

Parameters
strength:int

the keysize. This is an algorithm-specific metric, such as modulus length, specified in number of bits.

random:SecureRandom

the source of randomness.

initializeback to summary
public void initialize(AlgorithmParameterSpec params) throws InvalidAlgorithmParameterException

Overrides java.security.KeyPairGenerator.initialize.

Doc from java.security.KeyPairGenerator.initialize.

Initializes the key pair generator using the specified parameter set and the SecureRandom implementation of the highest-priority installed provider as the source of randomness. (If none of the installed providers supply an implementation of SecureRandom, a system-provided source of randomness is used.)

This concrete method has been added to this previously-defined abstract class. This method calls the KeyPairGeneratorSpi initialize method, passing it params and a source of randomness (obtained from the highest-priority installed provider or system-provided if none of the installed providers supply one). That initialize method always throws an UnsupportedOperationException if it is not overridden by the provider.

Parameters
params:AlgorithmParameterSpec

the parameter set used to generate the keys.

Exceptions
InvalidAlgorithmParameterException:
if the given parameters are inappropriate for this key pair generator.
initializeback to summary
public void initialize(AlgorithmParameterSpec params, SecureRandom random) throws InvalidAlgorithmParameterException

Overrides java.security.KeyPairGenerator.initialize.

Doc from java.security.KeyPairGenerator.initialize.

Initializes the key pair generator with the given parameter set and source of randomness.

This concrete method has been added to this previously-defined abstract class. This method calls the KeyPairGeneratorSpi initialize method, passing it params and random. That initialize method always throws an UnsupportedOperationException if it is not overridden by the provider.

Parameters
params:AlgorithmParameterSpec

the parameter set used to generate the keys.

random:SecureRandom

the source of randomness.

Exceptions
InvalidAlgorithmParameterException:
if the given parameters are inappropriate for this key pair generator.
org.bouncycastle.jcajce.provider.asymmetric.mlkem back to summary

public Class MLKEMKeyPairGeneratorSpi.MLKEM1024

extends MLKEMKeyPairGeneratorSpi
Class Inheritance

Field Summary

Inherited from org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi:
engineinitialisedparamrandom

Constructor Summary

AccessConstructor and Description
public

Method Summary

Inherited from org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi:
generateKeyPairinitializeinitializeinitialize

Constructor Detail

MLKEM1024back to summary
public MLKEM1024()
org.bouncycastle.jcajce.provider.asymmetric.mlkem back to summary

public Class MLKEMKeyPairGeneratorSpi.MLKEM512

extends MLKEMKeyPairGeneratorSpi
Class Inheritance

Field Summary

Inherited from org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi:
engineinitialisedparamrandom

Constructor Summary

AccessConstructor and Description
public

Method Summary

Inherited from org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi:
generateKeyPairinitializeinitializeinitialize

Constructor Detail

MLKEM512back to summary
public MLKEM512()
org.bouncycastle.jcajce.provider.asymmetric.mlkem back to summary

public Class MLKEMKeyPairGeneratorSpi.MLKEM768

extends MLKEMKeyPairGeneratorSpi
Class Inheritance

Field Summary

Inherited from org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi:
engineinitialisedparamrandom

Constructor Summary

AccessConstructor and Description
public

Method Summary

Inherited from org.bouncycastle.jcajce.provider.asymmetric.mlkem.MLKEMKeyPairGeneratorSpi:
generateKeyPairinitializeinitializeinitialize

Constructor Detail

MLKEM768back to summary
public MLKEM768()