AI-generated Key Takeaways
-
KeyGeneratorSpiis a Service Provider Interface (SPI) for theKeyGeneratorclass, enabling cryptographic providers to implement key generation for specific algorithms. -
It defines abstract methods for key generation, initialization with parameters and randomness sources, which providers must implement.
-
engineGenerateKey()generates a secret key, whileengineInit()methods initialize the key generator with varying parameters and randomness sources. -
This class is essential for creating and initializing key generators within cryptographic applications.
This class defines the Service Provider Interface (SPI)
for the KeyGenerator class.
All the abstract methods in this class must be implemented by each
cryptographic service provider who wishes to supply the implementation
of a key generator for a particular algorithm.
See Also
Public Constructor Summary
Protected Method Summary
| abstract SecretKey |
engineGenerateKey()
Generates a secret key.
|
| abstract void |
engineInit(AlgorithmParameterSpec params, SecureRandom random)
Initializes the key generator with the specified parameter
set and a user-provided source of randomness.
|
| abstract void | |
| abstract void |
engineInit(int keysize, SecureRandom random)
Initializes this key generator for a certain keysize, using the given
source of randomness.
|
Inherited Method Summary
Public Constructors
public KeyGeneratorSpi ()
Protected Methods
protected abstract void engineInit (AlgorithmParameterSpec params, SecureRandom random)
Initializes the key generator with the specified parameter set and a user-provided source of randomness.
Parameters
| params | the key generation parameters |
|---|---|
| random | the source of randomness for this key generator |
Throws
| InvalidAlgorithmParameterException | if params is
inappropriate for this key generator
|
|---|
protected abstract void engineInit (SecureRandom random)
Initializes the key generator.
Parameters
| random | the source of randomness for this generator |
|---|
protected abstract void engineInit (int keysize, SecureRandom random)
Initializes this key generator for a certain keysize, using the given source of randomness.
Parameters
| keysize | the keysize. This is an algorithm-specific metric, specified in number of bits. |
|---|---|
| random | the source of randomness for this key generator |
Throws
| InvalidParameterException | if the keysize is wrong or not supported. |
|---|