模块  java.base
软件包  javax.crypto

Class KeyGeneratorSpi


  • public abstract class KeyGeneratorSpiextends Object
    此类定义KeyGenerator类的 ( SPI )。 此类中的所有抽象方法必须由希望为特定算法提供密钥生成器实现的每个加密服务提供者实现。

    如果客户端未显式初始化KeyGenerator(通过调用init方法),则每个提供程序必须提供(并记录)默认初始化。 有关JDK提供程序使用的KeyGenerator默认值的信息,请参阅JDK Providers文档的Keysize Restriction部分。 但请注意,默认值可能因不同的提供商而异。 此外,提供程序的默认值可能会在将来的版本中更改。 因此,建议显式初始化KeyGenerator,而不是依赖于特定于提供程序的默认值。

    从以下版本开始:
    1.4
    另请参见:
    SecretKey
    • 构造方法详细信息

      • KeyGeneratorSpi

        public KeyGeneratorSpi()
    • 方法详细信息

      • engineInit

        protected abstract void engineInit​(SecureRandom random)
        初始化密钥生成器。
        参数
        random - 此生成器的随机源
      • engineInit

        protected abstract void engineInit​(int keysize,                                   SecureRandom random)
        使用给定的随机源为特定密钥大小初始化此密钥生成器。
        参数
        keysize - 密钥大小。 这是一个特定于算法的度量,以位数指定。
        random - 此密钥生成器的随机源
        异常
        InvalidParameterException - 如果密钥大小错误或不受支持。
      • engineGenerateKey

        protected abstract SecretKey engineGenerateKey()
        生成密钥。
        结果
        the new key