- java.lang.Object
-
- javax.crypto.KeyGeneratorSpi
-
public abstract class KeyGeneratorSpi extends Object
此类定义KeyGenerator类的 ( SPI )。 此类中的所有抽象方法必须由希望为特定算法提供密钥生成器实现的每个加密服务提供者实现。如果客户端未显式初始化KeyGenerator(通过调用
init方法),则每个提供程序必须提供(并记录)默认初始化。 有关JDK提供程序使用的KeyGenerator默认值的信息,请参阅JDK Providers文档的Keysize Restriction部分。 但请注意,默认值可能因不同的提供商而异。 此外,提供程序的默认值可能会在将来的版本中更改。 因此,建议显式初始化KeyGenerator,而不是依赖于特定于提供程序的默认值。- 从以下版本开始:
- 1.4
- 另请参见:
-
SecretKey
-
-
构造方法摘要
构造方法 构造器 描述 KeyGeneratorSpi()
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 protected abstract SecretKeyengineGenerateKey()生成密钥。protected abstract voidengineInit(int keysize, SecureRandom random)使用给定的随机源为特定密钥大小初始化此密钥生成器。protected abstract voidengineInit(SecureRandom random)初始化密钥生成器。protected abstract voidengineInit(AlgorithmParameterSpec params, SecureRandom random)使用指定的参数集和用户提供的随机源初始化密钥生成器。
-
-
-
方法详细信息
-
engineInit
protected abstract void engineInit(SecureRandom random)
初始化密钥生成器。- 参数
-
random- 此生成器的随机源
-
engineInit
protected abstract void engineInit(AlgorithmParameterSpec params, SecureRandom random) throws InvalidAlgorithmParameterException
使用指定的参数集和用户提供的随机源初始化密钥生成器。- 参数
-
params- 密钥生成参数 -
random- 此密钥生成器的随机源 - 异常
-
InvalidAlgorithmParameterException- 如果params不适合此密钥生成器
-
engineInit
protected abstract void engineInit(int keysize, SecureRandom random)使用给定的随机源为特定密钥大小初始化此密钥生成器。- 参数
-
keysize- 密钥大小。 这是一个特定于算法的度量,以位数指定。 -
random- 此密钥生成器的随机源 - 异常
-
InvalidParameterException- 如果密钥大小错误或不受支持。
-
engineGenerateKey
protected abstract SecretKey engineGenerateKey()
生成密钥。- 结果
- the new key
-
-