-
public interface DSAKeyPairGenerator
能够生成DSA密钥对的对象的接口。initialize
方法可以被调用任意次数。 如果在DSAKeyPairGenerator上没有initialize
方法,则实现此接口的每个提供程序都应提供(并记录)默认初始化。 请注意,默认值可能因不同的提供商而异。 此外,提供程序的默认值可能会在将来的版本中更改。 因此,建议显式初始化DSAKeyPairGenerator,而不是依赖于特定于提供程序的默认值。希望指示DSA特定参数并且通常生成适合与DSA算法一起使用的密钥对的用户
- 通过调用KeyPairGenerator
getInstance
方法并以“DSA”作为参数,获取DSA算法的密钥对生成器。 - 在将结果转换为DSAKeyPairGenerator并从此DSAKeyPairGenerator接口调用其中一个
initialize
方法之前,请检查返回的密钥对生成器是否为DSAKeyPairGenerator的实例。 - 通过调用KeyPairGenerator类的
generateKeyPair
方法生成密钥对。
注意:并不总是需要为DSA密钥对生成器执行特定于算法的初始化。 也就是说,并不总是需要在此接口中调用
initialize
方法。 当您接受特定于算法的参数的默认值时,initialize
使用KeyPairGenerator接口中的initialize
方法进行与算法无关的初始化。注意:此接口的某些早期实现可能不支持较大的DSA参数值,例如3072位。
- 从以下版本开始:
- 1.1
- 另请参见:
-
KeyPairGenerator
- 通过调用KeyPairGenerator
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 void
initialize(int modlen, boolean genParams, SecureRandom random)
为给定的模数长度(而不是参数)初始化密钥对生成器,以及可选的SecureRandom位源。void
initialize(DSAParams params, SecureRandom random)
使用DSA系列参数(p,q和g)和可选的SecureRandom位源初始化密钥对生成器。
-
-
-
方法详细信息
-
initialize
void initialize(DSAParams params, SecureRandom random) throws InvalidParameterException
使用DSA系列参数(p,q和g)和可选的SecureRandom位源初始化密钥对生成器。 如果需要SecureRandom位源但未提供,即null,则将使用默认的SecureRandom实例。- 参数
-
params
- 用于生成密钥的参数。 -
random
- 用于生成密钥位的随机位源; 可以为null。 - 异常
-
InvalidParameterException
- 如果params
值无效,为null或不受支持。
-
initialize
void initialize(int modlen, boolean genParams, SecureRandom random) throws InvalidParameterException
为给定的模数长度(而不是参数)初始化密钥对生成器,以及可选的SecureRandom位源。 如果需要SecureRandom位源但未提供,即null,则将使用默认的SecureRandom实例。如果
genParams
为true,则此方法生成新的p,q和g参数。 如果为false,则该方法使用预先计算的参数作为所请求的模数长度。 如果该模数长度没有预先计算的参数,则抛出异常。- 参数
-
modlen
- 模数长度(以位为单位)。 有效值是512到1024之间的任意倍数,包括端点,2048和3072。 -
random
- 用于生成密钥位的随机位源; 可以为null。 -
genParams
- 是否为所请求的模数长度生成新参数。 - 异常
-
InvalidParameterException
- 如果modlen
无效或不受支持,或者genParams
为false且没有预先计算的参数用于请求的模数长度。
-
-