public abstract class KeyPairGeneratorSpi extends Object
这个类定义的 (SPI) KeyPairGenerator
类,它被用来生成公钥和私钥。
该类中的所有抽象方法必须由希望提供特定算法的密钥对生成器的实现的每个加密服务提供商来实现。
如果客户端没有显式初始化KeyPairGenerator(通过调用initialize
方法),每个提供程序都必须提供(并记录)默认的初始化。 例如, Sun提供商使用1024位的默认模数大小(keysize)。
Constructor and Description |
---|
KeyPairGeneratorSpi() |
Modifier and Type | Method and Description |
---|---|
abstract KeyPair |
generateKeyPair()
生成一个密钥对。
|
void |
initialize(AlgorithmParameterSpec params, SecureRandom random)
使用指定的参数集和用户提供的随机源初始化密钥对生成器。
|
abstract void |
initialize(int keysize, SecureRandom random)
使用默认参数集初始化某个密钥对的密钥对生成器。
|
public abstract void initialize(int keysize, SecureRandom random)
keysize
- keysize
。
这是一种算法特定的度量,例如以位数指定的模数长度。
random
- 这个发电机的随机性来源。
InvalidParameterException
-如果
keysize
不受此KeyPairGeneratorSpi对象支持。
public void initialize(AlgorithmParameterSpec params, SecureRandom random) throws InvalidAlgorithmParameterException
这个具体的方法已经添加到这个以前定义的抽象类中。 (为了向后兼容,它不能是抽象的。)提供者可以覆盖它来初始化密钥对生成器。 如果一个参数不适合这个密钥对生成器,这样的覆盖应该抛出一个InvalidAlgorithmParameterException。 如果此方法未被覆盖,则会始终抛出UnsupportedOperationException异常。
params
- 用于生成密钥的参数集。
random
- 该发生器的随机性来源。
InvalidAlgorithmParameterException
- 如果给定的参数不适合该密钥对生成器。
public abstract KeyPair generateKeyPair()
KeyPair