- java.lang.Object
-
- java.security.KeyPairGeneratorSpi
-
- 已知直接子类:
-
KeyPairGenerator
public abstract class KeyPairGeneratorSpi extends Object
该类定义了
KeyPairGenerator
类的 ( SPI ),用于生成公钥和私钥对。该类中的所有抽象方法必须由希望提供特定算法的密钥对生成器的实现的每个加密服务提供商来实现。
如果客户端没有显式初始化KeyPairGenerator(通过调用
initialize
方法),则每个提供程序都必须提供(并记录)默认的初始化。 有关JDK提供程序使用的KeyPairGenerator默认值的信息,请参阅JDK Providers文档的Keysize Restriction部分。 不过,请注意,不同提供商的默认值可能会有所不同。 此外,提供者的默认值可能会在将来的版本中更改。 因此,建议明确地初始化KeyPairGenerator,而不是依赖于提供者特定的默认值。- 从以下版本开始:
- 1.2
- 另请参见:
-
KeyPairGenerator
,AlgorithmParameterSpec
-
-
构造方法摘要
构造方法 Constructor 描述 KeyPairGeneratorSpi()
-
方法摘要
所有方法 接口方法 抽象方法 具体的方法 Modifier and Type 方法 描述 abstract KeyPair
generateKeyPair()
生成一个密钥对。abstract void
initialize(int keysize, SecureRandom random)
使用默认参数集初始化某个密钥对的密钥对生成器。void
initialize(AlgorithmParameterSpec params, SecureRandom random)
使用指定的参数集和用户提供的随机源初始化密钥对生成器。
-
-
-
方法详细信息
-
initialize
public abstract void initialize(int keysize, SecureRandom random)
使用默认参数集初始化某个密钥对的密钥对生成器。- 参数
-
keysize
-keysize
。 这是一种算法特定的度量,例如以位数指定的模数长度。 -
random
- 该发生器的随机性来源。 - 异常
-
InvalidParameterException
- 如果此KeyPairGeneratorSpi对象不支持keysize
。
-
initialize
public void initialize(AlgorithmParameterSpec params, SecureRandom random) throws InvalidAlgorithmParameterException
使用指定的参数集和用户提供的随机源初始化密钥对生成器。这个具体的方法已经添加到这个以前定义的抽象类中。 (为了向后兼容,它不能是抽象的。)提供者可以覆盖它来初始化密钥对生成器。 如果一个参数不适合这个密钥对生成器,这样的覆盖应该会抛出一个InvalidAlgorithmParameterException。 如果此方法未被覆盖,则会始终抛出UnsupportedOperationException异常。
- 参数
-
params
- 用于生成密钥的参数集。 -
random
- 这个发电机的随机性来源。 - 异常
-
InvalidAlgorithmParameterException
- 如果给定的参数不适合该密钥对生成器。 - 从以下版本开始:
- 1.2
-
generateKeyPair
public abstract KeyPair generateKeyPair()
生成一个密钥对。 除非使用KeyPairGenerator接口调用初始化方法,否则将使用特定于算法的默认值。 这将在每次调用时生成一个新的密钥对。- 结果
-
新生成的
KeyPair
-
-