java.lang.Object
java.security.KeyFactorySpi
com.ibm.crypto.hdwrCCA.provider.DilithiumKeyFactory
@Deprecated(since="21.0.11.0",
forRemoval=true)
public class DilithiumKeyFactory
extends KeyFactorySpi
Deprecated, for removal: This API element is subject to removal in a future version.
Replaced by ML-DSA implementation. This CRYSTALS-Dilithium implementation is
deprecated and will be removed in a future release, in alignment with NIST's
latest recommendations for post-quantum cryptography modernization.
Users should transition to the finalized ML-DSA standards.
This class implements the CRYSTALS-Dilithium key factory of the IBMJCECCA
provider.
This documentation describes a Service Provider Interface. It is provided for implementation insight only. This class is not intended to be called directly by application developers. Please consult the 'Java Cryptography Architecture Standard' for details on how to use this interface through a public standard class.
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionDeprecated, for removal: This API element is subject to removal in a future version.Creates a new instance of this class. -
Method Summary
Modifier and TypeMethodDescriptionprotected PrivateKeyengineGeneratePrivate(KeySpec keySpec) Deprecated, for removal: This API element is subject to removal in a future version.Generates a private key object from the provided key specification (key material).protected PublicKeyengineGeneratePublic(KeySpec keySpec) Deprecated, for removal: This API element is subject to removal in a future version.Generates a public key object from the provided key specification (key material).protected <T extends KeySpec>
TengineGetKeySpec(Key key, Class<T> keySpec) Deprecated, for removal: This API element is subject to removal in a future version.Returns a specification (key material) of the given key object in the requested format.protected KeyengineTranslateKey(Key key) Deprecated, for removal: This API element is subject to removal in a future version.Translates a key object, whose provider may be unknown or potentially untrusted, into a corresponding key object of this key factory.
-
Constructor Details
-
DilithiumKeyFactory
public DilithiumKeyFactory()Deprecated, for removal: This API element is subject to removal in a future version.Creates a new instance of this class.
-
-
Method Details
-
engineGeneratePublic
Deprecated, for removal: This API element is subject to removal in a future version.Generates a public key object from the provided key specification (key material).- Specified by:
engineGeneratePublicin classKeyFactorySpi- Parameters:
keySpec- the specification (key material) of the public key. Two key specs are supported including DilithiumPublicKeySpec and KeyLabelKeySpec. In the case of using a KeyLabelKeySpec, the key spec must point to an already existing key within the PKDS.- Returns:
- the public key representing the material contained within the specified key spec.
- Throws:
InvalidKeySpecException- if the given key specification is inappropriate for this key factory to produce a public key.
-
engineGeneratePrivate
Deprecated, for removal: This API element is subject to removal in a future version.Generates a private key object from the provided key specification (key material).- Specified by:
engineGeneratePrivatein classKeyFactorySpi- Parameters:
keySpec- the specification (key material) of the private key. Two key specs are supported including DilithiumPrivateKeySpec and KeyLabelKeySpec. In the case of using a KeyLabelKeySpec the key spec must point to an already existing key within the PKDS.- Returns:
- the private key representing the material contained within the specified key spec.
- Throws:
InvalidKeySpecException- if the given key specification is inappropriate for this key factory to produce a private key.
-
engineGetKeySpec
protected <T extends KeySpec> T engineGetKeySpec(Key key, Class<T> keySpec) throws InvalidKeySpecException Deprecated, for removal: This API element is subject to removal in a future version.Returns a specification (key material) of the given key object in the requested format.- Specified by:
engineGetKeySpecin classKeyFactorySpi- Parameters:
key- the key object, must be eitherDilithiumPublicKeyorDilithiumPrivateKeykeySpec- the requested format in which the key material shall be returned- Returns:
- the underlying key specification (key material) in the requested format.
- Throws:
InvalidKeySpecException- if the requested key specification is inappropriate for the given key, or the given key cannot be processed (e.g., the given key has an unrecognized algorithm or format).
-
engineTranslateKey
Deprecated, for removal: This API element is subject to removal in a future version.Translates a key object, whose provider may be unknown or potentially untrusted, into a corresponding key object of this key factory.- Specified by:
engineTranslateKeyin classKeyFactorySpi- Parameters:
key- the key whose provider is unknown or untrusted. Key types acceptable arePublicKeyandPrivateKey- Returns:
- the translated key.
- Throws:
InvalidKeyException- if the given key cannot be processed by this key factory.
-